On 05/12/2017 08:31 AM, David M. Lloyd wrote:
On 05/12/2017 03:22 AM, Alan Bateman wrote:
On 12/05/2017 01:43, David M. Lloyd wrote:

I've proposed five patches to the jpms-spec-experts list [1..5] for discussion. The patches are as follows:

[...]
3. Layer primitive: addPackage() - allows ModuleLayer.Controllers to add packages to a module after it has been defined
[...]
However for #3 then you've missed several important error cases, e.g. illegal package names, or the package is already in another module defined to the class loader. There is impact in other areas too.

I wasn't worried about validating package names at first, because I figured that you could never define a class to the package anyway, but nevertheless I see the value in error detection (and avoiding piles of cruft inside the JVM regardless of whether it might trip any kind of internal assertion, which I acknowledge as a possibility as well), so I've pushed up a patch [1] to add package name validation. This also detects the empty package name situation.

Detecting package conflict is somewhat more subtle; that's coming up next.

[1] https://github.com/dmlloyd/openjdk-modules/commit/a636c8891d6958d7b395a57d17c95699ee549500

--
- DML

Reply via email to