private void readScript(final ImmutableProject.Builder projectBuilder, final File projectFolder) { try { currentScriptFolder = projectFolder; eventListener.startScript(currentScriptFolder.getName()); final ProjectFileReader projectFileReader = new ProjectFileReader(this, eventListener, projectFolder); final Map<String, String> actionsMap = projectFileReader.getAllActionsMap(); if (actionsMap.isEmpty()) { LOGGER.error("No action in the map. Ignore the script."); return; } final ParameterFileReader parameterFileReader = new ParameterFileReader(this, projectFileReader, projectFolder); final ImmutableUserPath.Builder userPathBuilder = ImmutableUserPath.builder(); final boolean hasAction = manageActions(projectFolder, projectFileReader, actionsMap, projectBuilder, userPathBuilder); final UserPath userPath = userPathBuilder.name(projectFileReader.getVirtualUserName()).build(); if (!hasAction) { LOGGER.error("No Init / Actions / End. Ignore the script."); return; } projectBuilder.addAllVariables(parameterFileReader.getAllVariables()).addUserPaths(userPath); } finally { eventListener.endScript(); } }