| @@ -926,7 +926,7 @@ | |||||
| <td>Yes</td> | <td>Yes</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>followlinks</td> | |||||
| <td>followsymlinks</td> | |||||
| <td>Must the selector follow symbolic links?</td> | <td>Must the selector follow symbolic links?</td> | ||||
| <td>No; defaults to <q>false</q> (was <q>true</q> before Ant 1.10.4)</td> | <td>No; defaults to <q>false</q> (was <q>true</q> before Ant 1.10.4)</td> | ||||
| </tr> | </tr> | ||||
| @@ -953,7 +953,7 @@ | |||||
| <td>Yes</td> | <td>Yes</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>followlinks</td> | |||||
| <td>followsymlinks</td> | |||||
| <td>Must the selector follow symbolic links?</td> | <td>Must the selector follow symbolic links?</td> | ||||
| <td>No; defaults to <q>false</q></td> | <td>No; defaults to <q>false</q></td> | ||||
| </tr> | </tr> | ||||
| @@ -980,7 +980,7 @@ | |||||
| <td>Yes</td> | <td>Yes</td> | ||||
| </tr> | </tr> | ||||
| <tr> | <tr> | ||||
| <td>followlinks</td> | |||||
| <td>followsymlinks</td> | |||||
| <td>Must the selector follow symbolic links?</td> | <td>Must the selector follow symbolic links?</td> | ||||
| <td>No; defaults to <q>false</q></td> | <td>No; defaults to <q>false</q></td> | ||||
| </tr> | </tr> | ||||
| @@ -42,7 +42,7 @@ public class OwnedBySelector implements FileSelector { | |||||
| private String owner; | private String owner; | ||||
| private boolean followLinks = false; | |||||
| private boolean followSymlinks = false; | |||||
| /** | /** | ||||
| * Sets the user name to look for. | * Sets the user name to look for. | ||||
| @@ -54,10 +54,10 @@ public class OwnedBySelector implements FileSelector { | |||||
| /** | /** | ||||
| * Sets the "follow links" flag. | * Sets the "follow links" flag. | ||||
| * @param followLinks the user name | |||||
| * @param followSymlinks the user name | |||||
| */ | */ | ||||
| public void setFollowLinks(String followLinks) { | |||||
| this.followLinks = PropertyHelper.toBoolean(followLinks); | |||||
| public void setFollowSymlinks(String followSymlinks) { | |||||
| this.followSymlinks = PropertyHelper.toBoolean(followSymlinks); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -67,7 +67,7 @@ public class OwnedBySelector implements FileSelector { | |||||
| } | } | ||||
| if (file != null) { | if (file != null) { | ||||
| try { | try { | ||||
| UserPrincipal user = followLinks ? Files.getOwner(file.toPath()) | |||||
| UserPrincipal user = followSymlinks ? Files.getOwner(file.toPath()) | |||||
| : Files.getOwner(file.toPath(), LinkOption.NOFOLLOW_LINKS); | : Files.getOwner(file.toPath(), LinkOption.NOFOLLOW_LINKS); | ||||
| return user != null && owner.equals(user.getName()); | return user != null && owner.equals(user.getName()); | ||||
| } catch (UnsupportedOperationException | IOException ex) { | } catch (UnsupportedOperationException | IOException ex) { | ||||
| @@ -42,7 +42,7 @@ public class PosixGroupSelector implements FileSelector { | |||||
| private String group; | private String group; | ||||
| private boolean followLinks = false; | |||||
| private boolean followSymlinks = false; | |||||
| /** | /** | ||||
| * Sets the group name to look for. | * Sets the group name to look for. | ||||
| @@ -54,10 +54,10 @@ public class PosixGroupSelector implements FileSelector { | |||||
| /** | /** | ||||
| * Sets the "follow links" flag. | * Sets the "follow links" flag. | ||||
| * @param followLinks the user name | |||||
| * @param followSymlinks the user name | |||||
| */ | */ | ||||
| public void setFollowLinks(String followLinks) { | |||||
| this.followLinks = PropertyHelper.toBoolean(followLinks); | |||||
| public void setFollowSymlinks(String followSyminks) { | |||||
| this.followSymlinks = PropertyHelper.toBoolean(followSymlinks); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -66,7 +66,7 @@ public class PosixGroupSelector implements FileSelector { | |||||
| throw new BuildException("the group attribute is required"); | throw new BuildException("the group attribute is required"); | ||||
| } | } | ||||
| try { | try { | ||||
| GroupPrincipal actualGroup = followLinks ? Files.readAttributes(file.toPath(), | |||||
| GroupPrincipal actualGroup = followSymlinks ? Files.readAttributes(file.toPath(), | |||||
| PosixFileAttributes.class).group() : Files.readAttributes(file.toPath(), | PosixFileAttributes.class).group() : Files.readAttributes(file.toPath(), | ||||
| PosixFileAttributes.class, LinkOption.NOFOLLOW_LINKS).group(); | PosixFileAttributes.class, LinkOption.NOFOLLOW_LINKS).group(); | ||||
| return actualGroup != null && actualGroup.getName().equals(group); | return actualGroup != null && actualGroup.getName().equals(group); | ||||
| @@ -41,7 +41,7 @@ public class PosixPermissionsSelector implements FileSelector { | |||||
| private String permissions; | private String permissions; | ||||
| private boolean followLinks = false; | |||||
| private boolean followSymlinks = false; | |||||
| /** | /** | ||||
| * Sets the permissions to look for. | * Sets the permissions to look for. | ||||
| @@ -64,10 +64,10 @@ public class PosixPermissionsSelector implements FileSelector { | |||||
| /** | /** | ||||
| * Sets the "follow links" flag. | * Sets the "follow links" flag. | ||||
| * @param followLinks the user name | |||||
| * @param followSymlinks the user name | |||||
| */ | */ | ||||
| public void setFollowLinks(String followLinks) { | |||||
| this.followLinks = PropertyHelper.toBoolean(followLinks); | |||||
| public void setFollowSymlinks(String followSymlinks) { | |||||
| this.followSymlinks = PropertyHelper.toBoolean(followSymlinks); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -76,7 +76,7 @@ public class PosixPermissionsSelector implements FileSelector { | |||||
| throw new BuildException("the permissions attribute is required"); | throw new BuildException("the permissions attribute is required"); | ||||
| } | } | ||||
| try { | try { | ||||
| return PosixFilePermissions.toString(followLinks | |||||
| return PosixFilePermissions.toString(followSymlinks | |||||
| ? Files.getPosixFilePermissions(file.toPath()) | ? Files.getPosixFilePermissions(file.toPath()) | ||||
| : Files.getPosixFilePermissions(file.toPath(), LinkOption.NOFOLLOW_LINKS)) | : Files.getPosixFilePermissions(file.toPath(), LinkOption.NOFOLLOW_LINKS)) | ||||
| .equals(permissions); | .equals(permissions); | ||||
| @@ -217,14 +217,14 @@ public class DirectoryScannerTest { | |||||
| } | } | ||||
| /** | /** | ||||
| * Test case for setFollowLinks() and associated functionality. | |||||
| * Test case for setFollowSymlinks() and associated functionality. | |||||
| * Only supports test on Linux at the moment because Java has | * Only supports test on Linux at the moment because Java has | ||||
| * no real notion of symlinks built in, so an os-specfic call | * no real notion of symlinks built in, so an os-specfic call | ||||
| * to Runtime.exec() must be made to create a link to test against. | * to Runtime.exec() must be made to create a link to test against. | ||||
| * @throws InterruptedException if something goes wrong | * @throws InterruptedException if something goes wrong | ||||
| */ | */ | ||||
| @Test | @Test | ||||
| public void testSetFollowLinks() throws IOException, InterruptedException { | |||||
| public void testSetFollowSymlinks() throws IOException, InterruptedException { | |||||
| if (supportsSymlinks) { | if (supportsSymlinks) { | ||||
| File dir = new File(buildRule.getProject().getBaseDir(), | File dir = new File(buildRule.getProject().getBaseDir(), | ||||
| "../../../main/org/apache/tools"); | "../../../main/org/apache/tools"); | ||||
| @@ -240,7 +240,7 @@ public class DirectoryScannerTest { | |||||
| Process process = Runtime.getRuntime().exec(command); | Process process = Runtime.getRuntime().exec(command); | ||||
| assertEquals("0 return code expected for external process", 0, process.waitFor()); | assertEquals("0 return code expected for external process", 0, process.waitFor()); | ||||
| // followLinks should be true by default, but if this ever | |||||
| // followSymlinks should be true by default, but if this ever | |||||
| // changes we will need this line. | // changes we will need this line. | ||||
| ds.setFollowSymlinks(true); | ds.setFollowSymlinks(true); | ||||
| @@ -80,7 +80,7 @@ public class OwnedBySelectorTest { | |||||
| s.setOwner(SELF); | s.setOwner(SELF); | ||||
| assertTrue(s.isSelected(null, null, symbolicLink.toFile())); | assertTrue(s.isSelected(null, null, symbolicLink.toFile())); | ||||
| s.setFollowLinks("yes"); | |||||
| s.setFollowSymlinks("yes"); | |||||
| assertFalse(s.isSelected(null, null, symbolicLink.toFile())); | assertFalse(s.isSelected(null, null, symbolicLink.toFile())); | ||||
| } | } | ||||
| } | } | ||||
| @@ -87,7 +87,7 @@ public class PosixGroupSelectorTest { | |||||
| s.setGroup(linkGroup.getName()); | s.setGroup(linkGroup.getName()); | ||||
| assertTrue(s.isSelected(null, null, symbolicLink.toFile())); | assertTrue(s.isSelected(null, null, symbolicLink.toFile())); | ||||
| s.setFollowLinks("yes"); | |||||
| s.setFollowSymlinks("yes"); | |||||
| assertFalse(s.isSelected(null, null, symbolicLink.toFile())); | assertFalse(s.isSelected(null, null, symbolicLink.toFile())); | ||||
| } | } | ||||
| } | } | ||||
| @@ -125,7 +125,7 @@ public class PosixPermissionsSelectorTest { | |||||
| s.setPermissions(argument); | s.setPermissions(argument); | ||||
| assertFalse(s.isSelected(null, null, symbolicLink.toFile())); | assertFalse(s.isSelected(null, null, symbolicLink.toFile())); | ||||
| s.setFollowLinks("yes"); | |||||
| s.setFollowSymlinks("yes"); | |||||
| assertTrue(s.isSelected(null, null, symbolicLink.toFile())); | assertTrue(s.isSelected(null, null, symbolicLink.toFile())); | ||||
| } | } | ||||
| } | } | ||||