Hey T, there's a difference between "Errata" and "grammatical issues". You could spend hours debating some of the finer points of the latter issue.
Errata is something that is factually incorrect. For example, accidentally calling an interface a class, or visa versa. Those are the kinds of issues that make it into our Errata list. We appreciate your help with the other issues, but in this case we do not consider this Errata.
On page 632, the output doesn't correspond to what the code is doing.
The code to print the output is:
Now path.getFileName() returns only the farthest element from the root in the directory hierarchy, not the full absolute path.
Even if we were to change the code above to:
it still wouldn't print the full path from the root, as the path in question is relative to the directories being watched. In this specific example, the directories being watched are "/user/home/zoo/data" and "/user/home/zoo/log", so the paths returned by watchEvent.context() would be relative to these, i.e. NewFile.txt, ZooData.txt, etc.
From the WatchEvent API:
Returns the context for the event.
In the case of ENTRY_CREATE, ENTRY_DELETE, and ENTRY_MODIFY events the context is a Path that is the relative path between the directory registered with the watch service, and the entry that is created, deleted, or modified.
page 604 - agreed and logged
page 605 - 12:00 am is midnight. 12:00 pm is noon. Making the text correct.
page 605 - agreed that 1984 and 2015 are clearly not in the same year! Logged.
page 610 - agreed and logged for both
page 619 - agreed and logged for both
page 621 - yes it should! logged
page 631 - you are correct. It should print path.toAbsolutePath(). We wanted to output the full path to make it easier to follow