Ejemplo n.º 1
0
 /**
  * The entry point to the class
  *
  * @param Tx_ExtensionBuilder_Domain_Model_Extension $extension
  */
 public function build(Tx_ExtensionBuilder_Domain_Model_Extension $extension)
 {
     $this->extension = $extension;
     if ($this->settings['extConf']['enableRoundtrip'] == 1) {
         $this->roundTripEnabled = TRUE;
         t3lib_div::devLog('roundtrip enabled', 'extension_builder', 0, $this->settings);
     } else {
         t3lib_div::devLog('roundtrip disabled', 'extension_builder', 0, $this->settings);
     }
     if (isset($this->settings['codeTemplateRootPath'])) {
         $this->codeTemplateRootPath = $this->settings['codeTemplateRootPath'];
     } else {
         throw new Exception('No codeTemplateRootPath configured');
     }
     if ($this->extension->getTargetVersion() == 4.5) {
         $this->locallangFileFormat = 'xml';
     }
     // Base directory already exists at this point
     $this->extensionDirectory = $this->extension->getExtensionDir();
     if (!is_dir($this->extensionDirectory)) {
         t3lib_div::mkdir($this->extensionDirectory);
     }
     t3lib_div::mkdir_deep($this->extensionDirectory, 'Configuration');
     $this->configurationDirectory = $this->extensionDirectory . 'Configuration/';
     t3lib_div::mkdir_deep($this->extensionDirectory, 'Resources/Private');
     $this->privateResourcesDirectory = $this->extensionDirectory . 'Resources/Private/';
     $this->generateYamlSettingsFile();
     $this->generateExtensionFiles();
     $this->generatePluginFiles();
     $this->copyStaticFiles();
     $this->generateTCAFiles();
     $this->generateTyposcriptFiles();
     $this->generateHtaccessFile();
     $this->generateLocallangFiles();
     $this->generateDomainObjectRelatedFiles();
     if (floatval($this->extension->getTargetVersion()) > 4.6) {
         $this->generateDocumentationFiles();
     }
 }