[ https://issues.apache.org/jira/browse/PDFBOX-1973?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13931487#comment-13931487 ]
John Hewson commented on PDFBOX-1973: ------------------------------------- Given that OutlineNotLocalException is now the only remaining non-deprecated checked exception in the org.apache.pdfbox.exceptions it's worth reviewing its functionality. OutlineNotLocalException is thrown only once, in PDOutlineItem#findDestinationPage to indicate that the outline has an action but that it does not have a page destination (e.g. a URI). However, when an outline does not have an action, null is returned to indicate that there is no destination page. This is not so different from the case where the outline has an action but its destination is not a page, triggering a OutlineNotLocalException. Instead of throwing OutlineNotLocalException we should just return null as happens anyway for outlines without actions. This means that OutlineNotLocalException can be removed entirely. Revision 1576610 makes this change. > Exception Refactoring (Don't wrap Exceptions with COSVisitorException) > ---------------------------------------------------------------------- > > Key: PDFBOX-1973 > URL: https://issues.apache.org/jira/browse/PDFBOX-1973 > Project: PDFBox > Issue Type: Improvement > Reporter: John Hewson > Assignee: John Hewson > Priority: Minor > > COSVisitorException is redundant, it is a simple wrapper for > SignatureException, CryptographyException and NoSuchAlgorithmException and > should be replaced by those exceptions directly. > For example, we can replace: > public void write(PDDocument doc) throws COSVisitorException > With: > public void write(PDDocument doc) throws IOException, CryptographyException > and so on... -- This message was sent by Atlassian JIRA (v6.2#6252)