@ SuppressWarnings ( "UnusedReturnValue" ) private boolean preprocessMarkdownFiles ( File inputDirectory ) throws MojoExecutionException { getLog ( ) . debug ( "Read files from: " + inputDirectory ) ; try { if ( ! inputDirectory . exists ( ) ) { getLog ( ) . info ( "There is no input folder for the project. Skipping." ) ; return false ; } int baseDepth = StringUtils . countMatches ( inputDirectory . getAbsolutePath ( ) , File . separator ) ; // Reading just the markdown dir and sub dirs if recursive option set List < File > markdownFiles = getFilesAsArray ( FileUtils . iterateFiles ( inputDirectory , getInputFileExtensions ( ) , recursiveInput ) ) ; for ( File file : markdownFiles ) { getLog ( ) . debug ( "File getName() " + file . getName ( ) ) ; getLog ( ) . debug ( "File getAbsolutePath() " + file . getAbsolutePath ( ) ) ; getLog ( ) . debug ( "File getPath() " + file . getPath ( ) ) ; MarkdownDTO dto = new MarkdownDTO ( ) ; dto . markdownFile = file ; dto . folderDepth = StringUtils . countMatches ( file . getAbsolutePath ( ) , File . separator ) - ( baseDepth + 1 ) ; if ( alwaysUseDefaultTitle ) { dto . title = defaultTitle ; } else { List < String > raw = FileUtils . readLines ( file , getInputEncoding ( ) ) ; dto . title = getTitle ( raw ) ; } if ( applyFiltering ) { for ( String line : FileUtils . readLines ( file , getInputEncoding ( ) ) ) { if ( isVariableLine ( line ) ) { String key = line . replaceAll ( "(^\\{)|(=.*)" , "" ) ; String value = line . replaceAll ( "(^\\{(.*?)=)|(}$)" , "" ) ; getLog ( ) . debug ( "Substitute: '" + key + "' -> '" + value + "'" ) ; dto . substitutes . put ( key , value ) ; } } } String inputFileExtension = FilenameUtils . getExtension ( file . getName ( ) ) ; dto . htmlFile = new File ( recursiveInput ? outputDirectory + File . separator + file . getParentFile ( ) . getPath ( ) . substring ( inputDirectory . getPath ( ) . length ( ) ) + File . separator + file . getName ( ) . replaceAll ( "." + inputFileExtension , ".html" ) : outputDirectory + File . separator + file . getName ( ) . replaceAll ( "." + inputFileExtension , ".html" ) ) ; getLog ( ) . debug ( "File htmlFile() " + dto . htmlFile ) ; markdownDTOs . add ( dto ) ; } } catch ( IOException e ) { throw new MojoExecutionException ( "Unable to load file " + e . getMessage ( ) , e ) ; } return true ; }
Read Markdown files from directory .