You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ms...@apache.org on 2018/03/11 22:25:45 UTC
svn commit: r1826471 - in /pdfbox/trunk:
pdfbox/src/main/java/org/apache/pdfbox/cos/
pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/
preflight/src/main/java/org/apache/pdfbox/preflight/process/
preflight/src/main/java/org/apache/pdfbox/preflight/util...
Author: msahyoun
Date: Sun Mar 11 22:25:45 2018
New Revision: 1826471
URL: http://svn.apache.org/viewvc?rev=1826471&view=rev
Log:
PDFBOX-4071: remove @throws declaration where exception will not be thrown
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/TrailerValidationProcess.java
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/utils/COSUtils.java
pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/utils/TestCOSUtils.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java?rev=1826471&r1=1826470&r2=1826471&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSDocument.java Sun Mar 11 22:25:45 2018
@@ -141,9 +141,8 @@ public class COSDocument extends COSBase
* @param type The type of the object.
*
* @return This will return an object with the specified type.
- * @throws IOException If there is an error getting the object
*/
- public COSObject getObjectByType(COSName type) throws IOException
+ public COSObject getObjectByType(COSName type)
{
for( COSObject object : objectPool.values() )
{
@@ -182,9 +181,8 @@ public class COSDocument extends COSBase
* @param type The type of the object.
*
* @return This will return an object with the specified type.
- * @throws IOException If there is an error getting the object
*/
- public List<COSObject> getObjectsByType( String type ) throws IOException
+ public List<COSObject> getObjectsByType( String type )
{
return getObjectsByType( COSName.getPDFName( type ) );
}
@@ -195,9 +193,8 @@ public class COSDocument extends COSBase
* @param type The type of the object.
*
* @return This will return an object with the specified type.
- * @throws IOException If there is an error getting the object
*/
- public List<COSObject> getObjectsByType( COSName type ) throws IOException
+ public List<COSObject> getObjectsByType( COSName type )
{
List<COSObject> retval = new ArrayList<>();
for( COSObject object : objectPool.values() )
@@ -521,9 +518,8 @@ public class COSDocument extends COSBase
* @param key The object key.
*
* @return The object in the pool or a new one if it has not been parsed yet.
- * @throws IOException If there is an error getting the proxy object.
*/
- public COSObject getObjectFromPool(COSObjectKey key) throws IOException
+ public COSObject getObjectFromPool(COSObjectKey key)
{
COSObject obj = null;
if( key != null )
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java?rev=1826471&r1=1826470&r2=1826471&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfwriter/COSWriter.java Sun Mar 11 22:25:45 2018
@@ -251,8 +251,6 @@ public class COSWriter implements ICOSVi
private void prepareIncrement(PDDocument doc)
{
- try
- {
if (doc != null)
{
COSDocument cosDoc = doc.getDocument();
@@ -280,11 +278,6 @@ public class COSWriter implements ICOSVi
}
setNumber(highestNumber);
}
- }
- catch (IOException e)
- {
- LOG.error(e,e);
- }
}
/**
Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/TrailerValidationProcess.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/TrailerValidationProcess.java?rev=1826471&r1=1826470&r2=1826471&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/TrailerValidationProcess.java (original)
+++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/TrailerValidationProcess.java Sun Mar 11 22:25:45 2018
@@ -126,53 +126,46 @@ public class TrailerValidationProcess ex
protected void checkTrailersForLinearizedPDF15(PreflightContext ctx)
{
PDDocument pdfDoc = ctx.getDocument();
- try
+
+ COSDocument cosDocument = pdfDoc.getDocument();
+ List<COSObject> xrefs = cosDocument.getObjectsByType(COSName.XREF);
+
+ if (xrefs.isEmpty())
+ {
+ // no XRef CosObject, may by this pdf file used the PDF 1.4 syntaxe
+ checkTrailersForLinearizedPDF14(ctx);
+ }
+ else
{
- COSDocument cosDocument = pdfDoc.getDocument();
- List<COSObject> xrefs = cosDocument.getObjectsByType(COSName.XREF);
+ long min = Long.MAX_VALUE;
+ long max = Long.MIN_VALUE;
+ COSDictionary firstTrailer = null;
+ COSDictionary lastTrailer = null;
- if (xrefs.isEmpty())
+ // Search First and Last trailers according to offset position.
+ for (COSObject co : xrefs)
{
- // no XRef CosObject, may by this pdf file used the PDF 1.4 syntaxe
- checkTrailersForLinearizedPDF14(ctx);
- }
- else
- {
- long min = Long.MAX_VALUE;
- long max = Long.MIN_VALUE;
- COSDictionary firstTrailer = null;
- COSDictionary lastTrailer = null;
-
- // Search First and Last trailers according to offset position.
- for (COSObject co : xrefs)
+ long offset = cosDocument.getXrefTable().get(new COSObjectKey(co));
+ if (offset < min)
{
- long offset = cosDocument.getXrefTable().get(new COSObjectKey(co));
- if (offset < min)
- {
- min = offset;
- firstTrailer = (COSDictionary) co.getObject();
- }
-
- if (offset > max)
- {
- max = offset;
- lastTrailer = (COSDictionary) co.getObject();
- }
-
+ min = offset;
+ firstTrailer = (COSDictionary) co.getObject();
}
- checkMainTrailer(ctx, firstTrailer);
- if (!compareIds(firstTrailer, lastTrailer, cosDocument))
+ if (offset > max)
{
- addValidationError(ctx, new ValidationError(PreflightConstants.ERROR_SYNTAX_TRAILER_ID_CONSISTENCY,
- "ID is different in the first and the last trailer"));
+ max = offset;
+ lastTrailer = (COSDictionary) co.getObject();
}
+
+ }
+
+ checkMainTrailer(ctx, firstTrailer);
+ if (!compareIds(firstTrailer, lastTrailer, cosDocument))
+ {
+ addValidationError(ctx, new ValidationError(PreflightConstants.ERROR_SYNTAX_TRAILER_ID_CONSISTENCY,
+ "ID is different in the first and the last trailer"));
}
- }
- catch (IOException e)
- {
- addValidationError(ctx, new ValidationError(PreflightConstants.ERROR_SYNTAX_TRAILER,
- "Unable to check PDF Trailers: " + e.getMessage(), e));
}
}
Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/utils/COSUtils.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/utils/COSUtils.java?rev=1826471&r1=1826470&r2=1826471&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/utils/COSUtils.java (original)
+++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/utils/COSUtils.java Sun Mar 11 22:25:45 2018
@@ -70,17 +70,10 @@ public final class COSUtils
{
if (elt instanceof COSObject)
{
- try
- {
- COSObjectKey key = new COSObjectKey((COSObject) elt);
- COSObject obj = doc.getObjectFromPool(key);
- return (obj != null && (obj.getObject() instanceof COSString || obj.getObject() instanceof COSName));
- }
- catch (IOException e)
- {
- LOGGER.debug("Couldn't get COSObject from object pool - returning false", e);
- return false;
- }
+
+ COSObjectKey key = new COSObjectKey((COSObject) elt);
+ COSObject obj = doc.getObjectFromPool(key);
+ return (obj != null && (obj.getObject() instanceof COSString || obj.getObject() instanceof COSName));
}
return (elt instanceof COSString || elt instanceof COSName);
@@ -122,17 +115,9 @@ public final class COSUtils
{
if (elt instanceof COSObject)
{
- try
- {
- COSObjectKey key = new COSObjectKey((COSObject) elt);
- COSObject obj = doc.getObjectFromPool(key);
- return (obj != null && claz.isInstance(obj.getObject()));
- }
- catch (IOException e)
- {
- LOGGER.debug("Couldn't get COSObject from object pool - returning false", e);
- return false;
- }
+ COSObjectKey key = new COSObjectKey((COSObject) elt);
+ COSObject obj = doc.getObjectFromPool(key);
+ return (obj != null && claz.isInstance(obj.getObject()));
}
return claz.isInstance(elt);
@@ -211,28 +196,21 @@ public final class COSUtils
{
if (cbase instanceof COSObject)
{
- try
+ COSObjectKey key = new COSObjectKey((COSObject) cbase);
+ COSObject obj = cDoc.getObjectFromPool(key);
+ if (obj != null && obj.getObject() instanceof COSString)
{
- COSObjectKey key = new COSObjectKey((COSObject) cbase);
- COSObject obj = cDoc.getObjectFromPool(key);
- if (obj != null && obj.getObject() instanceof COSString)
- {
- return ((COSString) obj.getObject()).getString();
- }
- else if (obj != null && obj.getObject() instanceof COSName)
- {
- return ((COSName) obj.getObject()).getName();
- }
- else
- {
- return null;
- }
+ return ((COSString) obj.getObject()).getString();
}
- catch (IOException e)
+ else if (obj != null && obj.getObject() instanceof COSName)
+ {
+ return ((COSName) obj.getObject()).getName();
+ }
+ else
{
- LOGGER.debug("Couldn't get COSObject from object pool - returning null", e);
return null;
}
+
}
else if (cbase instanceof COSString)
{
@@ -308,26 +286,19 @@ public final class COSUtils
{
if (cbase instanceof COSObject)
{
- try
+
+ COSObjectKey key = new COSObjectKey((COSObject) cbase);
+ COSObject obj = cDoc.getObjectFromPool(key);
+ if (obj == null)
{
- COSObjectKey key = new COSObjectKey((COSObject) cbase);
- COSObject obj = cDoc.getObjectFromPool(key);
- if (obj == null)
- {
- return null;
- }
- else if (obj.getObject() instanceof COSNumber)
- {
- return ((COSNumber) obj.getObject()).floatValue();
- }
- else
- {
- return null;
- }
+ return null;
}
- catch (IOException e)
+ else if (obj.getObject() instanceof COSNumber)
+ {
+ return ((COSNumber) obj.getObject()).floatValue();
+ }
+ else
{
- LOGGER.debug("Couldn't get COSObject from object pool - returning null", e);
return null;
}
}
@@ -353,26 +324,18 @@ public final class COSUtils
{
if (cbase instanceof COSObject)
{
- try
+ COSObjectKey key = new COSObjectKey((COSObject) cbase);
+ COSObject obj = cDoc.getObjectFromPool(key);
+ if (obj == null)
{
- COSObjectKey key = new COSObjectKey((COSObject) cbase);
- COSObject obj = cDoc.getObjectFromPool(key);
- if (obj == null)
- {
- return null;
- }
- else if (obj.getObject() instanceof COSNumber)
- {
- return ((COSNumber) obj.getObject()).intValue();
- }
- else
- {
- return null;
- }
+ return null;
}
- catch (IOException e)
+ else if (obj.getObject() instanceof COSNumber)
+ {
+ return ((COSNumber) obj.getObject()).intValue();
+ }
+ else
{
- LOGGER.debug("Couldn't get COSObject from object pool - returning null", e);
return null;
}
}
@@ -433,22 +396,14 @@ public final class COSUtils
*/
private static COSBase getCOSObjectAsClass(COSObject cosObject, COSDocument cDoc, Class claz)
{
- try
+ COSObjectKey key = new COSObjectKey(cosObject);
+ COSObject obj = cDoc.getObjectFromPool(key);
+ if (obj != null && claz.isInstance(obj.getObject()))
{
- COSObjectKey key = new COSObjectKey(cosObject);
- COSObject obj = cDoc.getObjectFromPool(key);
- if (obj != null && claz.isInstance(obj.getObject()))
- {
- return obj.getObject();
- }
- else
- {
- return null;
- }
+ return obj.getObject();
}
- catch (IOException e)
+ else
{
- LOGGER.debug("Couldn't get COSObject from object pool - returning null", e);
return null;
}
}
Modified: pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/utils/TestCOSUtils.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/utils/TestCOSUtils.java?rev=1826471&r1=1826470&r2=1826471&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/utils/TestCOSUtils.java (original)
+++ pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/utils/TestCOSUtils.java Sun Mar 11 22:25:45 2018
@@ -233,10 +233,17 @@ public class TestCOSUtils
}
@Override
- public COSObject getObjectFromPool(COSObjectKey key) throws IOException
+ public COSObject getObjectFromPool(COSObjectKey key)
{
- super.close();
- throw new IOException("Exception for code coverage");
+ try
+ {
+ super.close();
+ }
+ catch (IOException ioe)
+ {
+
+ }
+ return null;
}
}
}