public function do_actions()
 {
     $module_directory = HaddockProjectOrganisation_ModuleDirectoriesHelper::get_module_directory_from_cli_choice();
     echo 'Setting the camel case root for the ' . $module_directory->get_title() . ' module.' . PHP_EOL;
     $camel_case_root = CLIScripts_UserInterrogationHelper::get_validated_input('Please enter the upper camel case root: ', new HaddockProjectOrganisation_ModuleDirectoryCamelCaseRootValidator());
     HaddockProjectOrganisation_ModuleDirectoriesCamelCaseRootsHelper::set_camel_case_root($camel_case_root, $module_directory);
 }
 public function do_actions()
 {
     $module_directory = HaddockProjectOrganisation_ModuleDirectoriesHelper::get_module_directory_from_cli_choice();
     echo 'Creating an input validator for the ' . $module_directory->get_title() . ' module.' . PHP_EOL;
     $new_input_validator_name = CLIScripts_UserInterrogationHelper::get_validated_input('Please enter the name of the input validator: ', new InputValidation_InputValidatorNameValidator());
     InputValidation_InputValidatorsHelper::create_input_validator($new_input_validator_name, $module_directory);
 }
 public function do_actions()
 {
     $module_directory = HaddockProjectOrganisation_ModuleDirectoriesHelper::get_module_directory_from_cli_choice();
     echo 'Creating a file class for the ' . $module_directory->get_title() . ' module.' . PHP_EOL;
     $new_file_class_name = CLIScripts_UserInterrogationHelper::get_validated_input('Please enter the name of the file class: ', new FileSystem_FileClassNameValidator());
     FileSystem_FileClassesHelper::create_file_class($new_file_class_name, $module_directory);
 }
 /**
  * Fetches the directory object for the module with
  * the matching name.
  *
  * Each module and plug-in should store its project-specific data
  * in its own directory.
  * This function returns that directory.
  *
  * @param string $module_name The identifying name of the module.
  */
 public static function get_directory($module_name)
 {
     if (HaddockProjectOrganisation_ModuleDirectoriesHelper::insist_module_directory_exists($module_name)) {
         $project_specific_directory = HaddockProjectOrganisation_ProjectSpecificDirectoryHelper::get_project_specific_directory();
         $directory_name = $project_specific_directory->get_name() . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . $module_name;
         FileSystem_DirectoryHelper::mkdir_parents($directory_name);
         return new FileSystem_Directory($directory_name);
     }
 }
 public function do_actions()
 {
     /*
      * Get the module directory.
      */
     $module_directory = HaddockProjectOrganisation_ModuleDirectoriesHelper::get_module_directory_from_cli_choice();
     echo 'Creating a delta file for the ' . $module_directory->get_title() . ' module.' . PHP_EOL;
     Database_DeltaFilesHelper::create_delta_file($module_directory);
 }
 public function do_actions()
 {
     /*
      * Get the module directory.
      */
     $module_directory = HaddockProjectOrganisation_ModuleDirectoriesHelper::get_module_directory_from_cli_choice();
     echo 'Creating a CLI script for the ' . $module_directory->get_title() . ' module.' . PHP_EOL;
     $new_script_name = CLIScripts_UserInterrogationHelper::get_validated_input('Please enter the name of the script: ', new CLIScripts_NewScriptNameValidator());
     CLIScripts_CLIScriptsHelper::create_cli_script($new_script_name, $module_directory);
 }
 public static function get_delta_files()
 {
     $delta_files = array();
     foreach (HaddockProjectOrganisation_ModuleDirectoriesHelper::get_all_module_directories() as $module_directory) {
         foreach (self::get_delta_files_from_module_directory($module_directory) as $delta_file) {
             $delta_files[] = $delta_file;
         }
     }
     return $delta_files;
 }
 public function do_actions()
 {
     #$project_directory
     #	= HaddockProjectOrganisation_ProjectDirectoryHelper
     #		::get_project_directory();
     $module_names_aoa = array();
     foreach (HaddockProjectOrganisation_ModuleDirectoriesHelper::get_all_module_directories_sorted_by_identifying_name() as $module_directory) {
         $module_names_aoa[] = array('identifying_name' => $module_directory->get_identifying_name(), 'camel_case_root' => $module_directory->get_camel_case_root(), 'title' => $module_directory->get_title());
     }
     CLIScripts_DataRenderingHelper::render_array_of_assocs_in_table($module_names_aoa);
 }
 private static function get_table_specification_directory_name($table_name)
 {
     foreach (HaddockProjectOrganisation_ModuleDirectoriesHelper::get_all_module_directories() as $module_directory) {
         if (preg_match('/' . $module_directory->get_database_table_name_root() . '(\\w+)/', $table_name, $matches)) {
             return $module_directory->get_name() . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'table-specification' . DIRECTORY_SEPARATOR . $matches[1];
         }
     }
     throw new ErrorHandling_SprintfException('Unable to parse \'%s\'!', array($table_name));
 }