bodewig 2003/05/02 01:18:37
Modified: . WHATSNEW
docs/manual/OptionalTasks starteam.html
src/main/org/apache/tools/ant/taskdefs/optional/starteam
StarTeamCheckout.java
Log:
Provide control over EOL conversion via a new attribute.
PR: 18884
Submitted by: Steve Cohen <scohen at apache dot org>
Aaron DeForest <aaron underscore deforest at rosettabio dot
com>
Revision Changes Path
1.407 +4 -0 ant/WHATSNEW
Index: WHATSNEW
===================================================================
RCS file: /home/cvs/ant/WHATSNEW,v
retrieving revision 1.406
retrieving revision 1.407
diff -u -r1.406 -r1.407
--- WHATSNEW 29 Apr 2003 13:16:22 -0000 1.406
+++ WHATSNEW 2 May 2003 08:18:36 -0000 1.407
@@ -279,6 +279,10 @@
* <unzip> will now detect and successfully extract self-extracting
archives. Bugzilla Report 16213.
+* <stcheckout> has a new attribute "converteol" that can be used to
+ control the automatic line-end conversion performed on ASCII files.
+ Bugzilla Report 18884.
+
Changes from Ant 1.5.2 to Ant 1.5.3
===================================
1.19 +10 -0 ant/docs/manual/OptionalTasks/starteam.html
Index: starteam.html
===================================================================
RCS file: /home/cvs/ant/docs/manual/OptionalTasks/starteam.html,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- starteam.html 22 Apr 2003 07:35:15 -0000 1.18
+++ starteam.html 2 May 2003 08:18:36 -0000 1.19
@@ -176,6 +176,16 @@
<td align="center" valign="top">yes</td>
</tr>
+ <tr>
+ <td valign="top">convertEOL</td>
+ <td valign="top">If true, (default) all ascii files will have their
end-of-line
+ characters adjusted to that of the local machine on checkout. This is
normally
+ what you'd want but if for some reason you don't want that to happen,
set it to false
+ and the files will be checked out with whatever end-of-line characters
are used on
+ the server. </td>
+ <td align="center" valign="top">yes</td>
+ </tr>
+
</table>
<h3>Examples</h3>
1.18 +28 -4
ant/src/main/org/apache/tools/ant/taskdefs/optional/starteam/StarTeamCheckout.java
Index: StarTeamCheckout.java
===================================================================
RCS file:
/home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/optional/starteam/StarTeamCheckout.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- StarTeamCheckout.java 18 Apr 2003 23:40:28 -0000 1.17
+++ StarTeamCheckout.java 2 May 2003 08:18:36 -0000 1.18
@@ -99,6 +99,14 @@
private boolean deleteUncontrolled = true;
/**
+ * holder for the deleteUncontrolled attribute. If true,
+ * (default) local non-binary files will be checked out using the local
+ * platform's EOL convention. If false, checkouts will preserve the
+ * server's EOL convention.
+ */
+ private boolean convertEOL = true;
+
+ /**
* flag (defaults to true) to create all directories
* that are in the Starteam repository even if they are empty.
*
@@ -118,6 +126,16 @@
}
/**
+ * Set whether or not files should be checked out using the
+ * local machine's EOL convention.
+ * Optional, defaults to <code>true</code>.
+ * @param value the value to set the attribute to.
+ */
+ public void setConvertEOL(boolean value) {
+ this.convertEOL = value;
+ }
+
+ /**
* Sets the label StarTeam is to use for checkout; defaults to the most
recent file.
* The label must exist in starteam or an exception will be thrown.
* @param label the label to be used
@@ -277,7 +295,8 @@
log(" Items will be checked out with Exclusive locks.");
}
else if (this.lockStatus == Item.LockType.UNLOCKED) {
- log(" Items will be checked out unlocked (even if presently
locked).");
+ log(" Items will be checked out unlocked "
+ +"(even if presently locked).");
}
else {
log(" Items will be checked out with no change in lock
status.");
@@ -291,9 +310,14 @@
if (this.deleteUncontrolled) {
log(" Local items not found in the repository will be
deleted.");
}
+ log(" Items will be checked out " +
+ (this.convertEOL
+ ? "using the local machine's EOL convention"
+ : "without changing the EOL convention used on the server"));
log(" Directories will be created"+
- (this.createDirs ? " wherever they exist in the repository, even
if empty."
- : " only where needed to check out files."));
+ (this.createDirs
+ ? " wherever they exist in the repository, even if empty."
+ : " only where needed to check out files."));
}
/**
@@ -520,7 +544,7 @@
}
}
eachFile.checkout(this.lockStatus,
- !this.useRepositoryTimeStamp, true, true);
+ !this.useRepositoryTimeStamp,
this.convertEOL, true);
}
}
}