Artem,

thank you for suggested test improvements. Here is updated webrev:
http://cr.openjdk.java.net/~snikandrova/8022580/webrev.02/ <http://cr.openjdk.java.net/%7Esnikandrova/8022580/webrev.02/>

Chris,

seem like you have already looked into that issue before. May be you can find some time to review this fix?

Thank you,
Svetlana

On 06.07.2016 20:35, Artem Smotrakov wrote:
Hi Svetlana,

Thanks for addressing my comments. Could you please take a look at a couple of comments about TestFtpClientNameListWithNull.java below?

1. lines 64-70: should "client" be closed in "finally" block? I also think it might be better to re-throw IOExceptions instead of ignoring them (it may hide some problems). You can just add "throws" to main() method.

2. line 107: you close "out" in a couple of places in handelClient() method, it might be better to add a "finally" block, and shutdown everything there.

3. lines 176-182: you can close a client socket in handelClient(). Since it's a test for JDK 9, you can use try-with-resources like the following:

public void handelClient(Socket cl) {
    ...
    try (cl) {
        ...
    }
....

(please note that it doesn't work for JDK 8)

It would reduce the code and simplify the test (you would avoid some "try" blocks).

I am not sure that you need to close "out" if you close the socket.

4. Typo: handelClient -> handleClient

Artem

On 07/06/2016 09:11 AM, Svetlana Nikandrova wrote:
Hi Artem,

thank you for your replay. I believe I addressed all your comments. Please see updated diff: http://cr.openjdk.java.net/~snikandrova/8022580/webrev.01/ <http://cr.openjdk.java.net/%7Esnikandrova/8022580/webrev.01/>

Thank you,
Svetlana

On 05.07.2016 20:54, Artem Smotrakov wrote:
Hi Svetlana,

I am not an official reviewer, but I have a couple comments below.

TestFtpClientNameListWithNull.java:

1. Shouldn't "commandHasArgs" be volatile? Looks like it may cause intermittent failures. As a sanity check, you may want to run the test in a loop to make sure it is stable.

2. You may want to make FtpServer implement AutoCloseable (terminate() method just becomes close()). Then, you can use it in try-with-resource block which would simplify the code (you can avoid a couple of nested try-catch blocks).

By the way, it might be good to make sun.net.ftp.FtpClient implement AutoCloseable as well, but probably it should be a separate enhancement.

3. line 62-63, 66: should it be in "finally" block?

4. How many connection is FtpServer supposed to handle in this test? If only one, it might be better to remove the "while" loop and "done" variable to simplify the code.

5. Is it necessary to handle a client connections in a separate thread? Avoiding too many threads would simplify the test.

6. The test ignores a couple of IOException, it might be better to fail it they occur.

7. Why is it necessary to use daemons?

8. Please use braces for "if" statements, see Java Coding Conventions.

FtpClient.java: please update copyright year.

Artem

On 07/05/2016 07:40 AM, Svetlana Nikandrova wrote:
Hello,

please review this fix for bug
https://bugs.openjdk.java.net/browse/JDK-8022580
Webrev:
http://cr.openjdk.java.net/~msolovie/8022580/webrev.00/ <http://cr.openjdk.java.net/%7Emsolovie/8022580/webrev.00/>

Description:
There is no handling for null path parameter in the method sun.net.ftp.impl.FtpClient#nameList(), while javadoc says that "@param path a String containing the pathname of the directory to list or null for the current working directory". Changeset adds check that if param is null NLST will be sent without parameter (no-parameter default is current directory).

JPRT tested.

Thank you,
Svetlana




Reply via email to