Hi Mandy,

The current changes can be found here:

http://cr.openjdk.java.net/~reinhapa/reviews/8161230/webrev.02


On 02.09.2016 23:11, Mandy Chung wrote:
>> On Sep 2, 2016, at 2:50 AM, Patrick Reinhart <patr...@reini.net> wrote:
>>
>> Updated the existing 
>> http://cr.openjdk.java.net/~reinhapa/reviews/8161230/webrev.01
> ClassLoader::resources returning Stream<URL> is a good addition. 
>  
> 1386      * {@code IOException} occur getting the next resource element, it 
> must be 
> 1387      * wrapped into an {@code UncheckedIOException}.
>
> This has been mentioned in the paragraph above. This can be dropped from 
> @apiNote. And add:
>
> @throws UncheckedIOException if I/O errors occur
There was already an discussion about this with Alan Bateman:

http://mail.openjdk.java.net/pipermail/core-libs-dev/2016-August/042792.html

So I do not know is the best solution for this...

> 1392      * @return  An stream of resource {@link java.net.URL {@code URL}}
>
> {@code…} is not needed as @link generates the text in <code>..</code> format. 
>  You can simply write:
>    {@link java.net.URL URL}
>
> typo s/An/A

I have that fixed those now in the actual revision and hopefully using
the correct "a" all the times.

> I’m unsure if “resource URL” clearly describes it.  What about
>    @return A stream of {@code URL} representing the location of the resources 
> with the given name.
>
> 1399      * @since  1.9
>
> should be @since 9.

Also this has been fixed - old habits ;-)
> I have reservation in adding ClassLoader::systemResources static method.
>
> ClassLoader::getSystemResources is a convenient method that is equivalent to 
> calling ClassLoader::getSystemClassLoader().getResources(), since the system 
> class loader is never null.  This method includes the resources in the 
> application’s classpath.
>
> With the new ClassLoader::getPlatformClassLoader() method, a better way to 
> get the “system” resources from JDK (not the ones from the classpath), it can 
> call:
>    ClassLoader::getPlatformClassLoader().resources();
>
> To get a Stream of URL of the resources visible to system class loader, it 
> can call the new resources method:
>    ClassLoader::getSystemClassLoader().resources();
>
> So it doesn’t seem that the proposed systemResources static method is 
> necessary.

Hmm... We may have overlooked this, when we started by just looking into
the API changes in general. I did those with Paul Sandoz in more deep in
the
following thread:

http://mail.openjdk.java.net/pipermail/core-libs-dev/2016-August/042752.html

and this proposal is based on the "go" from Paul here:

http://mail.openjdk.java.net/pipermail/core-libs-dev/2016-August/043012.html

> I suggest to combine the two tests in a single test, ResourcesStreamTest and 
> add @bug JBS-id
>
> ResourcesSuccessCase
>
>   46         List<URL> resources = stream.collect(Collectors.toList());
>   52         URL url = resources.get(0);
>
> You can check the size first.  This can be simplified to use filter/findFirst 
> to file the expected URL (yes need to call cl.resources again that is not an 
> issue).

I have done this also in the new revision

> Mandy
> P.S. process wide - RDP1 starts.  This enhancement would need a sponsor and 
> also request for approval [1].  I’m off for the long weekend and will follow 
> up next Tuesday on this.
>
> [1] http://openjdk.java.net/projects/jdk9/fc-extension-process

- Patrick

Reply via email to