You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by le...@apache.org on 2014/05/30 17:18:49 UTC

svn commit: r1598627 - in /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel: PDResources.java font/PDFont.java graphics/PDXObject.java graphics/image/PDImageXObject.java

Author: lehmi
Date: Fri May 30 15:18:48 2014
New Revision: 1598627

URL: http://svn.apache.org/r1598627
Log:
PDFBOX-2101: added clear() method to PDFont and PDXObject to delete cached resources if necessary

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDResources.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDXObject.java
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDResources.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDResources.java?rev=1598627&r1=1598626&r2=1598627&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDResources.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDResources.java Fri May 30 15:18:48 2014
@@ -107,6 +107,10 @@ public class PDResources implements COSO
     {
         if (fonts != null)
         {
+            for(PDFont font : fonts.values())
+            {
+                font.clear();
+            }
             fonts.clear();
             fonts = null;
         }
@@ -122,6 +126,10 @@ public class PDResources implements COSO
         }
         if (xobjects != null)
         {
+            for(PDXObject xobject : xobjects.values())
+            {
+                xobject.clear();
+            }
             xobjects.clear();
             xobjects = null;
         }

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java?rev=1598627&r1=1598626&r2=1598627&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDFont.java Fri May 30 15:18:48 2014
@@ -835,4 +835,11 @@ public abstract class PDFont implements 
         return cmap;
     }
 
+    /**
+     * Calling this will release all cached information.
+     */
+    public void clear()
+    {
+    }
+
 }

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDXObject.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDXObject.java?rev=1598627&r1=1598626&r2=1598627&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDXObject.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/PDXObject.java Fri May 30 15:18:48 2014
@@ -128,4 +128,11 @@ public class PDXObject implements COSObj
     {
         return stream;
     }
+    
+    /**
+     * Calling this will release all cached information.
+     */
+    public void clear()
+    {
+    }
 }

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java?rev=1598627&r1=1598626&r2=1598627&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java Fri May 30 15:18:48 2014
@@ -467,4 +467,11 @@ public final class PDImageXObject extend
             return null;
         }
     }
+    
+    @Override
+    public void clear()
+    {
+        super.clear();
+        cachedImage = null;
+    }
 }