RFR: 8308842: Consolidate exceptions thrown from Class-File API [v3]

Adam Sotona asotona at openjdk.org
Mon Jun 5 14:38:47 UTC 2023


> Class-File API actually throws wide variety of exceptions based on the actual situation. Complete error handling code must cover `IndexOutOfBoundsException`, `IllegalStateException` and `IllegalArgumentException`. 
> 
> Based on previous discussions we decided to consolidate on `IllegalArgumentException` with possible sub-classes. 
> 
> It allows easy common error handling in majority of use case, however it allows also to distinguish source of the error when needed (for example `javap` needs to know if the exception comes from constant poll or not). 
> 
> Newly introduced `ConstantPoolException` extends `IllegalArgumentException` to indicate the source of the problem is in constant pool. 
> 
> Please review.
> 
> Thanks,
> Adam

Adam Sotona has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:

 - Merge branch 'master' into JDK-8308842-exceptions
 - fixed javadoc
 - 8308842: Consolidate exceptions thrown from Class-File API

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/14143/files
  - new: https://git.openjdk.org/jdk/pull/14143/files/8bc444df..65a7e70a

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=14143&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=14143&range=01-02

  Stats: 36795 lines in 720 files changed: 29233 ins; 3454 del; 4108 mod
  Patch: https://git.openjdk.org/jdk/pull/14143.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14143/head:pull/14143

PR: https://git.openjdk.org/jdk/pull/14143


More information about the core-libs-dev mailing list