diff --git a/src/main/org/apache/tools/ant/types/ArchiveFileSet.java b/src/main/org/apache/tools/ant/types/ArchiveFileSet.java index 40152db3c..c07fc25f8 100755 --- a/src/main/org/apache/tools/ant/types/ArchiveFileSet.java +++ b/src/main/org/apache/tools/ant/types/ArchiveFileSet.java @@ -23,6 +23,7 @@ import org.apache.tools.ant.BuildException; import org.apache.tools.ant.DirectoryScanner; import org.apache.tools.ant.Project; import org.apache.tools.ant.types.resources.FileResource; +import org.apache.tools.ant.types.resources.FileProvider; import org.apache.tools.zip.UnixStat; /** @@ -64,6 +65,8 @@ public abstract class ArchiveFileSet extends FileSet { private boolean fileModeHasBeenSet = false; private boolean dirModeHasBeenSet = false; + private static final String ERROR_DIR_AND_SRC_ATTRIBUTES = "Cannot set both dir and src attributes"; + private static final String ERROR_PATH_AND_PREFIX = "Cannot set both fullpath and prefix attributes"; /** Constructor for ArchiveFileSet */ public ArchiveFileSet() { @@ -102,7 +105,7 @@ public abstract class ArchiveFileSet extends FileSet { public void setDir(File dir) throws BuildException { checkAttributesAllowed(); if (src != null) { - throw new BuildException("Cannot set both dir and src attributes"); + throw new BuildException(ERROR_DIR_AND_SRC_ATTRIBUTES); } super.setDir(dir); hasDir = true; @@ -141,7 +144,7 @@ public abstract class ArchiveFileSet extends FileSet { public void setSrcResource(Resource src) { checkArchiveAttributesAllowed(); if (hasDir) { - throw new BuildException("Cannot set both dir and src attributes"); + throw new BuildException(ERROR_DIR_AND_SRC_ATTRIBUTES); } this.src = src; } @@ -163,8 +166,8 @@ public abstract class ArchiveFileSet extends FileSet { * @return the archive in case the archive is a file, null otherwise. */ public File getSrc() { - if (src instanceof FileResource) { - return ((FileResource) src).getFile(); + if (src instanceof FileProvider) { + return ((FileProvider) src).getFile(); } return null; } @@ -178,7 +181,7 @@ public abstract class ArchiveFileSet extends FileSet { public void setPrefix(String prefix) { checkArchiveAttributesAllowed(); if (!"".equals(prefix) && !"".equals(fullpath)) { - throw new BuildException("Cannot set both fullpath and prefix attributes"); + throw new BuildException(ERROR_PATH_AND_PREFIX); } this.prefix = prefix; } @@ -204,7 +207,7 @@ public abstract class ArchiveFileSet extends FileSet { public void setFullpath(String fullpath) { checkArchiveAttributesAllowed(); if (!"".equals(prefix) && !"".equals(fullpath)) { - throw new BuildException("Cannot set both fullpath and prefix attributes"); + throw new BuildException(ERROR_PATH_AND_PREFIX); } this.fullpath = fullpath; } @@ -243,10 +246,10 @@ public abstract class ArchiveFileSet extends FileSet { } if (!src.isExists()) { throw new BuildException( - "the archive " + src.getName() + " doesn't exist"); + "The archive " + src.getName() + " doesn't exist"); } if (src.isDirectory()) { - throw new BuildException("the archive " + src.getName() + throw new BuildException("The archive " + src.getName() + " can't be a directory"); } ArchiveScanner as = newArchiveScanner();