Files.walkFileTree() visits a file leading to a loop with LOOP_DETECT option enabled
Rajendra Gutupalli
Rajendra.Gutupalli at Sun.COM
Fri Aug 8 00:17:13 PDT 2008
Alan Bateman wrote:
>
> The lines with "(skip)" are where a cycle is detected and aren't
> (currently) notified to you.
Hi Alan, with the fix you have given I got the output for the following
directory structure.Now all the cycles are getting notified
/java
Start
DirP
DirQ
DirT
dirVlink - > Start/DirP/DirV
DirV
start_link -> /java/Start
dirTlink_forward -> Start/DirP/DirQ/DirT
DirJ
dirjfile
output: Files.walkFileTree(Paths.get("/java"),
EnuSet.allOf(FileVisitOption.class),-1,new MyFileVisitor());
(pre) /java/Start
(pre) /java/Start/DirP
(pre) /java/Start/DirP/DirQ
(pre) /java/Start/DirP/DirQ/DirT
(pre) /java/Start/DirP/DirQ/DirT/dirVlink
(visit file) /java/Start/DirP/DirQ/DirT/dirVlink/start_link
(post) /java/Start/DirP/DirQ/DirT/dirVlink
(post) /java/Start/DirP/DirQ/DirT
(post) /java/Start/DirP/DirQ
(pre) /java/Start/DirP/DirV
(visit file) /java/Start/DirP/DirV/start_link
(post) /java/Start/DirP/DirV
(pre) /java/Start/DirP/dirTlink_forward
(pre) /java/Start/DirP/dirTlink_forward/dirVlink
(visit file) /java/Start/DirP/dirTlink_forward/dirVlink/start_link
(post) /java/Start/DirP/dirTlink_forward/dirVlink
(post) /java/Start/DirP/dirTlink_forward
(post) /java/Start/DirP
(pre) /java/Start/DirJ
(visit file) /java/Start/DirJ/dirjfile
(post) /java/Start/DirJ
(post) /java/Start
ls -lR report
bash-3.00$ ls -lR /java/Start/
/java/Start/:
total 4
drwxrwxrwx 2 rg157576 staff 512 Aug 8 12:08 DirJ
drwxrwxrwx 4 rg157576 staff 512 Aug 8 12:05 DirP
/java/Start/DirJ:
total 0
-rw-rw-rw- 1 rg157576 staff 0 Aug 8 12:08 dirjfile
/java/Start/DirP:
total 6
drwxrwxrwx 3 rg157576 staff 512 Aug 8 11:57 DirQ
drwxrwxrwx 2 rg157576 staff 512 Aug 8 12:07 DirV
lrwxrwxrwx 1 rg157576 staff 27 Aug 8 12:05 dirTlink_forward
-> /java/Start/DirP/DirQ/DirT/
/java/Start/DirP/DirQ:
total 2
drwxrwxrwx 2 rg157576 staff 512 Aug 8 12:06 DirT
/java/Start/DirP/DirQ/DirT:
total 2
lrwxrwxrwx 1 rg157576 staff 22 Aug 8 12:06 dirVlink ->
/java/Start/DirP/DirV/
/java/Start/DirP/DirV:
total 2
lrwxrwxrwx 1 rg157576 staff 12 Aug 8 12:07 start_link ->
/java/Start/
Thanks
Rajendra.
More information about the nio-dev
mailing list