peterreilly 2004/03/12 01:10:10 Modified: src/main/org/apache/tools/ant/taskdefs Tag: ANT_16_BRANCH Tar.java Log: sync with head Revision Changes Path No revision No revision 1.46.2.5 +84 -7 ant/src/main/org/apache/tools/ant/taskdefs/Tar.java Index: Tar.java =================================================================== RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/Tar.java,v retrieving revision 1.46.2.4 retrieving revision 1.46.2.5 diff -u -r1.46.2.4 -r1.46.2.5 --- Tar.java 9 Mar 2004 17:01:34 -0000 1.46.2.4 +++ Tar.java 12 Mar 2004 09:10:10 -0000 1.46.2.5 @@ -91,6 +91,7 @@ /** * Add a new fileset with the option to specify permissions + * @return the tar fileset to be used as the nested element. */ public TarFileSet createTarFileSet() { TarFileSet fileset = new TarFileSet(); @@ -101,6 +102,7 @@ /** * Set is the name/location of where to create the tar file. + * @param tarFile the location of the tar file. * @deprecated for consistency with other tasks, please use setDestFile() */ public void setTarfile(File tarFile) { @@ -118,6 +120,7 @@ /** * This is the base directory to look in for things to tar. + * @param baseDir the base directory. */ public void setBasedir(File baseDir) { this.baseDir = baseDir; @@ -135,6 +138,7 @@ * <li> gnu - GNU extensions are used for any paths greater than the maximum. * <li> omit - paths greater than the maximum are omitted from the archive * </ul> + * @param mode the mode string to handle long files. * @deprecated setLongFile(String) is deprecated and is replaced with * setLongFile(Tar.TarLongFileMode) to make Ant's Introspection * mechanism do the work and also to encapsulate operations on @@ -159,6 +163,7 @@ * <li> gnu - GNU extensions are used for any paths greater than the maximum. * <li> omit - paths greater than the maximum are omitted from the archive * </ul> + * @param mode the mode to handle long file names. */ public void setLongfile(TarLongFileMode mode) { this.longFileMode = mode; @@ -172,6 +177,7 @@ * <li> gzip - Gzip compression * <li> bzip2 - Bzip2 compression * </ul> + * @param mode the compression method. */ public void setCompression(TarCompressionMethod mode) { this.compression = mode; @@ -179,6 +185,7 @@ /** * do the business + * @throws BuildException on error */ public void execute() throws BuildException { if (tarFile == null) { @@ -298,6 +305,11 @@ /** * tar a file + * @param file the file to tar + * @param tOut the output stream + * @param vPath the path name of the file to tar + * @param tarFileSet the fileset that the file came from. + * @throws IOException on error */ protected void tarFile(File file, TarOutputStream tOut, String vPath, TarFileSet tarFileSet) @@ -389,6 +401,9 @@ } /** + * Is the archive up to date in relationship to a list of files. + * @param files the files to check + * @return true if the archive is up to date. * @deprecated use the two-arg version instead. */ protected boolean archiveIsUpToDate(String[] files) { @@ -396,6 +411,10 @@ } /** + * Is the archive up to date in relationship to a list of files. + * @param files the files to check + * @param dir the base directory for the files. + * @return true if the archive is up to date. * @since Ant 1.5.2 */ protected boolean archiveIsUpToDate(String[] files, File dir) { @@ -407,6 +426,7 @@ /** * This is a FileSet with the option to specify permissions + * and other attributes. */ public static class TarFileSet extends FileSet { private String[] files = null; @@ -420,17 +440,28 @@ private String fullpath = ""; private boolean preserveLeadingSlashes = false; + /** + * Creates a new <code>TarFileSet</code> instance. + * Using a fileset as a constructor argument. + * + * @param fileset a <code>FileSet</code> value + */ public TarFileSet(FileSet fileset) { super(fileset); } + /** + * Creates a new <code>TarFileSet</code> instance. + * + */ public TarFileSet() { super(); } /** * Get a list of files and directories specified in the fileset. - * @return a list of file and directory names, relative to + * @param p the current project. + * @return a list of file and directory names, relative to * the baseDir for the project. */ public String[] getFiles(Project p) { @@ -451,12 +482,16 @@ * A 3 digit octal string, specify the user, group and * other modes in the standard Unix fashion; * optional, default=0644 + * @param octalString a 3 digit octal string. */ public void setMode(String octalString) { this.fileMode = UnixStat.FILE_FLAG | Integer.parseInt(octalString, 8); } + /** + * @return the current mode. + */ public int getMode() { return fileMode; } @@ -466,6 +501,7 @@ * other modes in the standard Unix fashion; * optional, default=0755 * + * @param octalString a 3 digit octal string. * @since Ant 1.6 */ public void setDirMode(String octalString) { @@ -474,6 +510,7 @@ } /** + * @return the current directory mode * @since Ant 1.6 */ public int getDirMode() { @@ -484,11 +521,15 @@ * The username for the tar entry * This is not the same as the UID, which is * not currently set by the task. + * @param userName the user name for the tar entry. */ public void setUserName(String userName) { this.userName = userName; } + /** + * @return the user name for the tar entry + */ public String getUserName() { return userName; } @@ -497,11 +538,15 @@ * The groupname for the tar entry; optional, default="" * This is not the same as the GID, which is * not currently set by the task. + * @param groupName the group name string. */ public void setGroup(String groupName) { this.groupName = groupName; } + /** + * @return the group name string. + */ public String getGroup() { return groupName; } @@ -510,11 +555,15 @@ * If the prefix attribute is set, all files in the fileset * are prefixed with that path in the archive. * optional. + * @param prefix the path prefix. */ public void setPrefix(String prefix) { this.prefix = prefix; } + /** + * @return the path prefix for the files in the fileset. + */ public String getPrefix() { return prefix; } @@ -524,11 +573,15 @@ * is written with that path in the archive. The prefix attribute, * if specified, is ignored. It is an error to have more than one file specified in * such a fileset. + * @param fullpath the path to use for the file in a fileset. */ public void setFullpath(String fullpath) { this.fullpath = fullpath; } + /** + * @return the path to use for a single file fileset. + */ public String getFullpath() { return fullpath; } @@ -537,11 +590,15 @@ * Flag to indicates whether leading `/'s should * be preserved in the file names. * Optional, default is <code>false</code>. + * @param b the leading slashes flag. */ public void setPreserveLeadingSlashes(boolean b) { this.preserveLeadingSlashes = b; } + /** + * @return the leading slashes flag. + */ public boolean getPreserveLeadingSlashes() { return preserveLeadingSlashes; } @@ -553,40 +610,60 @@ */ public static class TarLongFileMode extends EnumeratedAttribute { - // permissible values for longfile attribute - public static final String WARN = "warn"; - public static final String FAIL = "fail"; - public static final String TRUNCATE = "truncate"; - public static final String GNU = "gnu"; - public static final String OMIT = "omit"; + /** permissible values for longfile attribute */ + public static final String + WARN = "warn", + FAIL = "fail", + TRUNCATE = "truncate", + GNU = "gnu", + OMIT = "omit"; private final String[] validModes = {WARN, FAIL, TRUNCATE, GNU, OMIT}; + /** Constructor, defaults to "warn" */ public TarLongFileMode() { super(); setValue(WARN); } + /** + * @return the possible values for this enumerated type. + */ public String[] getValues() { return validModes; } + /** + * @return true if value is "truncate". + */ public boolean isTruncateMode() { return TRUNCATE.equalsIgnoreCase(getValue()); } + /** + * @return true if value is "warn". + */ public boolean isWarnMode() { return WARN.equalsIgnoreCase(getValue()); } + /** + * @return true if value is "gnu". + */ public boolean isGnuMode() { return GNU.equalsIgnoreCase(getValue()); } + /** + * @return true if value is "fail". + */ public boolean isFailMode() { return FAIL.equalsIgnoreCase(getValue()); } + /** + * @return true if value is "omit". + */ public boolean isOmitMode() { return OMIT.equalsIgnoreCase(getValue()); }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]