Hi Alan, David, thanks for your replies, both are very helpful! :)
so long ... Nicolai On 04.01.2018 16:06, Alan Bateman wrote: > On 04/01/2018 14:25, David Lloyd wrote: >> : Hi Nicolai, >> >> You may want to refer to the thread here: >> http://mail.openjdk.java.net/pipermail/jigsaw-dev//2017-November/013315.html >> >> >> >> Essentially a module may delegate a private Lookup to itself, or a >> module may do so on behalf of another module. To use your >> example, the module called "jpa" would have to internally create >> a private Lookup on "com.example.dto" and hand it over to the >> "hibernate" module, which would then be able to use it to reflect >> on private members of "com.example.dto". > I suspect Nicolai is looking for Module addOpens: > > "API Note: This method can be used for cases where a consumer > module uses a qualified opens to open a package to an API module > but where the reflective access to the members of classes in the > consumer module is delegated to code in another module. Code in the > API module can use this method to open the package in the consumer > module to the other module." > > but you are right that using Lookup objects would work well here. > No need to open any package, instead have the consumer module pass > a Lookup object as a capability to the framework, the framework > passes to the trusted service provider. > >> >> That said, the java.lang.invoke.MethodHandles#privateLookupIn() >> method leaves a little to be desired as it requires a class from >> the target module; it would be nice if there was a variant which >> accepted a Module... > There wouldn't be a lookup class in that case so it would be a > different kinda of lookup object. > > -Alan > -- PGP Key: http://keys.gnupg.net/pks/lookup?op=vindex&search=0xCA3BAD2E9CCCD509 Web: http://codefx.org a blog about software development https://www.sitepoint.com/java high-quality Java/JVM content http://do-foss.de Free and Open Source Software for the City of Dortmund Twitter: https://twitter.com/nipafx