/**
  * @param null|string $actionName
  * @param null|string $controllerName
  * @param null|string $moduleName
  */
 public function __construct($actionName, $controllerName, $moduleName)
 {
     // call parent constructor
     parent::__construct();
     // add methods
     $this->addContent($actionName, $controllerName, $moduleName);
 }
 /**
  * @param null|string     $moduleName
  * @param ClassReflection $loadedEntity
  */
 public function __construct($moduleName, ClassReflection $loadedEntity)
 {
     // call parent constructor
     parent::__construct();
     // add methods
     $this->addContent($moduleName, $loadedEntity);
 }
 /**
  * Generate the getConfig() method
  *
  * @return void
  */
 protected function addGetConfigMethod()
 {
     // create method body
     $body = new BodyGenerator();
     $body->setContent('include __DIR__ . \'/config/module.config.php\'');
     // create method
     $method = new MethodGenerator();
     $method->setName('getConfig');
     $method->setBody('return ' . $body->generate() . ';' . AbstractGenerator::LINE_FEED);
     // check for api docs
     if ($this->config['flagAddDocBlocks']) {
         $method->setDocBlock(new DocBlockGenerator('Get module configuration', 'Reads the module configuration from the config/ directory', [new ReturnTag(['array'], 'module configuration data')]));
     }
     // add method
     $this->addMethodFromGenerator($method);
     $this->addUse('Zend\\ModuleManager\\Feature\\ConfigProviderInterface');
     $this->setImplementedInterfaces(array_merge($this->getImplementedInterfaces(), ['ConfigProviderInterface']));
 }