/** * Faz rollback do arquivo de rollback do modulo * * @param array $rollback * @return array|bool */ private static function removeModuleFolders($rollback) { $errors = []; if (array_key_exists(Strings::ROLLBACK_DIR_CREATED_TAG, $rollback)) { $createdDirs = $rollback[Strings::ROLLBACK_DIR_CREATED_TAG]; if (is_array($createdDirs)) { foreach ($createdDirs as $dir) { if (!FileManager::deleteDirectory($dir)) { $errors[] = Strings::ERROR_ROLLBACK_MODULE_DIRS; } } } } return !empty($errors) ? $errors : true; }
/** * Copia arquivos convencionais do modulo (qualquer coisa exceto migrations) para as respectivas pastas * * @param string $moduleType * @param string $moduleName * @param string $copyAll * @param array $rollback * @param Command $command * @return array|bool */ public static function makeOrdinaryCopies($moduleType, $moduleName, &$copyAll, array &$rollback, Command $command) { $errors = []; //Inicia o Rollback de arquivos copiados $rollback[Strings::ROLLBACK_ORDINARY_FILE_COPY_TAG] = []; //Cria array de quais pastas e arquivos devem ser copiados para onde $paths = [PathHelper::getModuleControllersPath($moduleType, $moduleName) => PathHelper::getLaravelControllersPath(), PathHelper::getModuleModelsPath($moduleType, $moduleName) => PathHelper::getLaravelModelsPath(), PathHelper::getModuleViewsPath($moduleType, $moduleName) => PathHelper::getLaravelViewsPath($moduleType, $moduleName), PathHelper::getModulePublicPath($moduleType, $moduleName) => PathHelper::getLaravelPublicPath($moduleType, $moduleName), PathHelper::getModuleAssetsPath($moduleType, $moduleName) => PathHelper::getLaravelAssetsPath($moduleType, $moduleName)]; FileManager::recursiveCopy($errors, $copyAll, $rollback, $command, $paths); return !empty($errors) ? $errors : true; }