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 2015/03/12 23:34:54 UTC

svn commit: r1666328 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/text/PDFTextStripperByArea.java

Author: tilman
Date: Thu Mar 12 22:34:54 2015
New Revision: 1666328

URL: http://svn.apache.org/r1666328
Log:
PDFBOX-2576: use base class, as suggested by Martin Schröder; make fields final

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/text/PDFTextStripperByArea.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/text/PDFTextStripperByArea.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/text/PDFTextStripperByArea.java?rev=1666328&r1=1666327&r2=1666328&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/text/PDFTextStripperByArea.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/text/PDFTextStripperByArea.java Thu Mar 12 22:34:54 2015
@@ -36,11 +36,11 @@ import org.apache.pdfbox.pdmodel.common.
  */
 public class PDFTextStripperByArea extends PDFTextStripper
 {
-    private List<String> regions = new ArrayList<String>();
-    private Map<String,Rectangle2D> regionArea = new HashMap<String,Rectangle2D>();
-    private Map<String,Vector<ArrayList<TextPosition>>> regionCharacterList =
-        new HashMap<String,Vector<ArrayList<TextPosition>>>();
-    private Map<String,StringWriter> regionText = new HashMap<String,StringWriter>();
+    private final List<String> regions = new ArrayList<String>();
+    private final Map<String, Rectangle2D> regionArea = new HashMap<String, Rectangle2D>();
+    private final Map<String, Vector<List<TextPosition>>> regionCharacterList
+            = new HashMap<String, Vector<List<TextPosition>>>();
+    private final Map<String, StringWriter> regionText = new HashMap<String, StringWriter>();
 
     /**
      * Constructor.
@@ -101,7 +101,7 @@ public class PDFTextStripperByArea exten
             //reset the stored text for the region so this class
             //can be reused.
             String regionName = regionIter.next();
-            Vector<ArrayList<TextPosition>> regionCharactersByArticle = new Vector<ArrayList<TextPosition>>();
+            Vector<List<TextPosition>> regionCharactersByArticle = new Vector<List<TextPosition>>();
             regionCharactersByArticle.add( new ArrayList<TextPosition>() );
             regionCharacterList.put( regionName, regionCharactersByArticle );
             regionText.put( regionName, new StringWriter() );
@@ -128,7 +128,7 @@ public class PDFTextStripperByArea exten
             Rectangle2D rect = regionArea.get( region );
             if( rect.contains( text.getX(), text.getY() ) )
             {
-                charactersByArticle = (Vector)regionCharacterList.get( region );
+                charactersByArticle = regionCharacterList.get( region );
                 super.processTextPosition( text );
             }
         }
@@ -140,13 +140,14 @@ public class PDFTextStripperByArea exten
      *
      * @throws IOException If there is an error writing the text.
      */
+    @Override
     protected void writePage() throws IOException
     {
         Iterator<String> regionIter = regionArea.keySet().iterator();
         while( regionIter.hasNext() )
         {
             String region = regionIter.next();
-            charactersByArticle = (Vector)regionCharacterList.get( region );
+            charactersByArticle = regionCharacterList.get( region );
             output = regionText.get( region );
             super.writePage();
         }