Author: leleueri
Date: Wed Oct 30 20:31:57 2013
New Revision: 1537287
URL: http://svn.apache.org/r1537287
Log:
[PDFBOX-1763] Convert IllegalArgumentException in ValidationError if the
ICCProfile is invalid
Modified:
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/ICCProfileWrapper.java
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/StandardColorSpaceHelper.java
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/CatalogValidationProcess.java
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ExtGStateValidationProcess.java
Modified:
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/ICCProfileWrapper.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/ICCProfileWrapper.java?rev=1537287&r1=1537286&r2=1537287&view=diff
==============================================================================
---
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/ICCProfileWrapper.java
(original)
+++
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/ICCProfileWrapper.java
Wed Oct 30 20:31:57 2013
@@ -22,7 +22,8 @@
package org.apache.pdfbox.preflight.graphic;
import static
org.apache.pdfbox.preflight.PreflightConstants.DOCUMENT_DICTIONARY_KEY_OUTPUT_INTENTS;
-import static
org.apache.pdfbox.preflight.PreflightConstants.OUTPUT_INTENT_DICTIONARY_KEY_DEST_OUTPUT_PROFILE;
+import static
org.apache.pdfbox.preflight.PreflightConstants.ERROR_GRAPHIC_OUTPUT_INTENT_ICC_PROFILE_INVALID;
+import static org.apache.pdfbox.preflight.PreflightConstants.*;
import java.awt.color.ICC_ColorSpace;
import java.awt.color.ICC_Profile;
@@ -36,6 +37,7 @@ import org.apache.pdfbox.pdmodel.PDDocum
import org.apache.pdfbox.pdmodel.common.PDStream;
import org.apache.pdfbox.preflight.PreflightContext;
import org.apache.pdfbox.preflight.PreflightDocument;
+import org.apache.pdfbox.preflight.ValidationResult.ValidationError;
import org.apache.pdfbox.preflight.exception.ValidationException;
import org.apache.pdfbox.preflight.utils.COSUtils;
@@ -143,11 +145,13 @@ public class ICCProfileWrapper
}
catch (IllegalArgumentException e)
{
- throw new ValidationException("DestOutputProfile isn't a
ICCProfile", e);
+ context.addValidationError(new
ValidationError(ERROR_GRAPHIC_OUTPUT_INTENT_ICC_PROFILE_INVALID,
+ "DestOutputProfile isn't a valid ICCProfile.
Caused by : " + e.getMessage()));
}
catch (IOException e)
- {
- throw new ValidationException("Unable to parse the
ICCProfile", e);
+ {
+ context.addValidationError(new
ValidationError(ERROR_GRAPHIC_OUTPUT_INTENT_ICC_PROFILE_INVALID,
+ "Unable to parse the ICCProfile. Caused by : " +
e.getMessage()));
}
}
}
Modified:
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/StandardColorSpaceHelper.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/StandardColorSpaceHelper.java?rev=1537287&r1=1537286&r2=1537287&view=diff
==============================================================================
---
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/StandardColorSpaceHelper.java
(original)
+++
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/graphic/StandardColorSpaceHelper.java
Wed Oct 30 20:31:57 2013
@@ -266,11 +266,17 @@ public class StandardColorSpaceHelper im
*/
}
}
+ }
+ catch (IllegalArgumentException e)
+ {
+ // this is not a ICC_Profile
+ context.addValidationError(new
ValidationError(ERROR_GRAPHIC_INVALID_COLOR_SPACE_ICCBASED,
+ "ICCBase color space is invalid. Caused By: " +
e.getMessage()));
}
catch (IOException e)
{
context.addValidationError(new
ValidationError(ERROR_GRAPHIC_INVALID_COLOR_SPACE,
- "Unable to read ICCBase color space : " + e.getMessage()));
+ "Unable to read ICCBase color space. Caused by : " +
e.getMessage()));
}
}
Modified:
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/CatalogValidationProcess.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/CatalogValidationProcess.java?rev=1537287&r1=1537286&r2=1537287&view=diff
==============================================================================
---
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/CatalogValidationProcess.java
(original)
+++
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/CatalogValidationProcess.java
Wed Oct 30 20:31:57 2013
@@ -456,11 +456,11 @@ public class CatalogValidationProcess ex
{
// this is not a ICC_Profile
addValidationError(ctx, new
ValidationError(ERROR_GRAPHIC_OUTPUT_INTENT_ICC_PROFILE_INVALID,
- "DestOutputProfile isn't a ICCProfile"));
+ "DestOutputProfile isn't a valid ICCProfile. Caused by : "
+ e.getMessage()));
}
catch (IOException e)
{
- throw new ValidationException("Unable to parse the ICC Profile",
e);
+ throw new ValidationException("Unable to parse the ICC Profile.",
e);
}
}
}
Modified:
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ExtGStateValidationProcess.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ExtGStateValidationProcess.java?rev=1537287&r1=1537286&r2=1537287&view=diff
==============================================================================
---
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ExtGStateValidationProcess.java
(original)
+++
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ExtGStateValidationProcess.java
Wed Oct 30 20:31:57 2013
@@ -231,10 +231,10 @@ public class ExtGStateValidationProcess
if (egs.getItem("TR2") != null)
{
String s = egs.getNameAsString("TR2");
- if (!"default".equals(s))
+ if (!"Default".equals(s))
{
context.addValidationError(new
ValidationError(ERROR_GRAPHIC_UNEXPECTED_VALUE_FOR_KEY,
- "TR2 key only expect 'default' value, not '" + s +
"'"));
+ "TR2 key only expect 'Default' value, not '" + s +
"'"));
}
}
}