You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2020/04/25 07:41:43 UTC

svn commit: r1876961 - /pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/ant/PDFToTextTask.java

Author: tilman
Date: Sat Apr 25 07:41:43 2020
New Revision: 1876961

URL: http://svn.apache.org/viewvc?rev=1876961&view=rev
Log:
PDFBOX-4071: use functional syntax

Modified:
    pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/ant/PDFToTextTask.java

Modified: pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/ant/PDFToTextTask.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/ant/PDFToTextTask.java?rev=1876961&r1=1876960&r2=1876961&view=diff
==============================================================================
--- pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/ant/PDFToTextTask.java (original)
+++ pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/ant/PDFToTextTask.java Sat Apr 25 07:41:43 2020
@@ -17,19 +17,18 @@
 package org.apache.pdfbox.examples.ant;
 
 import java.io.File;
+import java.io.IOException;
 
 import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.pdfbox.tools.ExtractText;
-import org.apache.tools.ant.DirectoryScanner;
 import org.apache.tools.ant.Task;
 
 import org.apache.tools.ant.types.FileSet;
 
 /**
- * This is an Ant task that will allow pdf documents to be converted using an
- * Ant task.
+ * This is an Ant task that will allow pdf documents to be converted using an Ant task.
  *
  * @author Ben Litchfield
  */
@@ -55,31 +54,29 @@ public class PDFToTextTask extends Task
     {
         log( "PDFToTextTask executing" );
 
-        for (FileSet fileSet : fileSets)
-        {
-            DirectoryScanner dirScanner = fileSet.getDirectoryScanner(getProject());
-            dirScanner.scan();
-            String[] files = dirScanner.getIncludedFiles();
-            for (String file : files)
+        fileSets.stream().
+            map(fileSet -> fileSet.getDirectoryScanner(getProject())).
+            forEachOrdered(dirScanner ->
             {
-                File f = new File(dirScanner.getBasedir(), file);
-                log( "processing: " + f.getAbsolutePath() );
-                String pdfFile = f.getAbsolutePath();
-                if( pdfFile.toUpperCase().endsWith( ".PDF" ) )
+                dirScanner.scan();
+                for (String file : dirScanner.getIncludedFiles())
                 {
-                    String textFile = pdfFile.substring( 0, pdfFile.length() -3 );
-                    textFile = textFile + "txt";
-                    try
+                    File f = new File(dirScanner.getBasedir(), file);
+                    log("processing: " + f.getAbsolutePath());
+                    String pdfFile = f.getAbsolutePath();
+                    if (pdfFile.toUpperCase().endsWith(".PDF"))
                     {
-                        ExtractText.main(new String[]{pdfFile, textFile});
-                    }
-                    catch( Exception e )
-                    {
-                        log( "Error processing " + pdfFile + e.getMessage() );
+                        String textFile = pdfFile.substring(0, pdfFile.length() - 3) + "txt";
+                        try
+                        {
+                            ExtractText.main(new String[] {pdfFile, textFile});
+                        }
+                        catch (IOException e)
+                        {
+                            log("Error processing " + pdfFile + e.getMessage());
+                        }
                     }
                 }
-            }
-
-        }
+            });
     }
 }