needsresolveproperty and changeproperty PR: 25711 git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@275924 13f79535-47bb-0310-9956-ffa450edef68master
@@ -38,6 +38,9 @@ Other changes: | |||||
* <fixcrlf> has a new attribute - fixlast. Bugzilla Report 23262. | * <fixcrlf> has a new attribute - fixlast. Bugzilla Report 23262. | ||||
* <p4submit> has 2 new attributes, needsresolveproperty and changeproperty. | |||||
Bugzilla Report 25711. | |||||
Changes from Ant 1.5.4 to Ant 1.6.0 | Changes from Ant 1.5.4 to Ant 1.6.0 | ||||
=================================== | =================================== | ||||
@@ -9,9 +9,8 @@ | |||||
<li>Les Hughes (<a href="mailto:leslie.hughes@rubus.com">leslie.hughes@rubus.com</a>)</li> | <li>Les Hughes (<a href="mailto:leslie.hughes@rubus.com">leslie.hughes@rubus.com</a>)</li> | ||||
<li>Kirk Wylie (<a href="mailto:kirk@radik.com">kirk@radik.com</a>)</li> | <li>Kirk Wylie (<a href="mailto:kirk@radik.com">kirk@radik.com</a>)</li> | ||||
<li>Matt Bishop (<a href="mailto:matt@thebishops.org">matt@thebishops.org</a>)</li> | <li>Matt Bishop (<a href="mailto:matt@thebishops.org">matt@thebishops.org</a>)</li> | ||||
<li>Antoine Levy-Lambert (<a href="mailto:levylambert@tiscali-dsl.de">levylambert@tiscali-dsl.de</a>)</li> | |||||
<li>Antoine Levy-Lambert</li> | |||||
</ul> | </ul> | ||||
<p>Version $Revision$ - $Date$</p> | |||||
<hr> | <hr> | ||||
<h2>Contents</h2> | <h2>Contents</h2> | ||||
<ul> | <ul> | ||||
@@ -330,6 +329,20 @@ is not the latest any more. | |||||
<td valign="top">The changelist number to submit</td> | <td valign="top">The changelist number to submit</td> | ||||
<td valign="top" align="center">Yes</td> | <td valign="top" align="center">Yes</td> | ||||
</tr> | </tr> | ||||
<tr> | |||||
<td valign="top">changeproperty</td> | |||||
<td valign="top">Name of a property to which the new change number | |||||
will be assigned if the Perforce server renumbers the change<br> | |||||
Since ant 1.6.1</td> | |||||
<td valign="top" align="center">No</td> | |||||
</tr> | |||||
<tr> | |||||
<td valign="top">needsresolveproperty</td> | |||||
<td valign="top">Name of property which will be set to <code>true</code> | |||||
if the submit requires a resolve<br> | |||||
Since ant 1.6.1</td> | |||||
<td valign="top" align="center">No</td> | |||||
</tr> | |||||
</table> | </table> | ||||
<h3>Examples</h3> | <h3>Examples</h3> | ||||
@@ -959,9 +972,15 @@ P4Resolve does not use a change list number (it takes it from the files it is wo | |||||
Changed p4submit (detection of changes of change numbers, | Changed p4submit (detection of changes of change numbers, | ||||
and of failed submits due to resolution needed)</td> | and of failed submits due to resolution needed)</td> | ||||
</tr> | </tr> | ||||
<tr> | |||||
<td valign="top">Jan 2004</td> | |||||
<td valign="top">ant 1.6.1</td> | |||||
<td valign="top"> | |||||
Changed p4submit, needsresolveproperty and changeproperty added</td> | |||||
</tr> | |||||
</table> | </table> | ||||
<hr> | <hr> | ||||
<p align="center">Copyright © 2001-2003 Apache Software Foundation. All rights | |||||
<p align="center">Copyright © 2001-2004 Apache Software Foundation. All rights | |||||
Reserved.</p> | Reserved.</p> | ||||
</body> | </body> | ||||
</html> | </html> |
@@ -1,4 +1,4 @@ | |||||
<!-- author Antoine Levy-Lambert levylambert@tiscali-dsl.de --> | |||||
<!-- author Antoine Levy-Lambert --> | |||||
<!-- this file demonstrates that p4.change will be modified by p4submit --> | <!-- this file demonstrates that p4.change will be modified by p4submit --> | ||||
<!-- if the change number is modified by the Perforce daemon during the submission --> | <!-- if the change number is modified by the Perforce daemon during the submission --> | ||||
<project name="build1" default="runtest"> | <project name="build1" default="runtest"> |
@@ -1,11 +1,11 @@ | |||||
<!-- author Antoine Levy-Lambert levylambert@tiscali-dsl.de --> | |||||
<!-- author Antoine Levy-Lambert --> | |||||
<!-- this test shows that p4 submit can now indicate that a file needs to be resolved --> | <!-- this test shows that p4 submit can now indicate that a file needs to be resolved --> | ||||
<!-- before running the test, edit this xml and change the 5 properties at the top to values which make sense on your system--> | <!-- before running the test, edit this xml and change the 5 properties at the top to values which make sense on your system--> | ||||
<!-- the test uses two Perforce client specs which must exist beforehand --> | <!-- the test uses two Perforce client specs which must exist beforehand --> | ||||
<!-- also using both client specs you should be able to edit the file ${depot_file_spec} --> | <!-- also using both client specs you should be able to edit the file ${depot_file_spec} --> | ||||
<project name="testresolve" default= "test"> | <project name="testresolve" default= "test"> | ||||
<property name="first_client" value="levyant_dev_ant"/> | <property name="first_client" value="levyant_dev_ant"/> | ||||
<property name="first_client_root" value="C:\dev\gnu"/> | |||||
<property name="first_client_root" value="C:\dev\depot"/> | |||||
<property name="second_client" value="levyant_cygwin_test"/> | <property name="second_client" value="levyant_cygwin_test"/> | ||||
<property name="second_client_root" value="C:\dev\test"/> | <property name="second_client_root" value="C:\dev\test"/> | ||||
<property name="depot_file_spec" value="//depot/foobar"/> | <property name="depot_file_spec" value="//depot/foobar"/> | ||||
@@ -40,14 +40,17 @@ | |||||
doing a change ${change} on client ${p4.client} | doing a change ${change} on client ${p4.client} | ||||
</echo> | </echo> | ||||
<p4edit change="${change}" view="${depot_file_spec}"/> | <p4edit change="${change}" view="${depot_file_spec}"/> | ||||
<mkdir dir="${client_root}/depot"/> | |||||
<echo file="${client_root}/depot/foobar"> | <echo file="${client_root}/depot/foobar"> | ||||
hello ${p4.client} ${change} | hello ${p4.client} ${change} | ||||
</echo> | </echo> | ||||
</target> | </target> | ||||
<target name="submit"> | <target name="submit"> | ||||
<p4submit change="${change}"/> | |||||
<p4submit change="${change}" needsresolveproperty="needsresolve" changeproperty="mychange"/> | |||||
<echo> | <echo> | ||||
p4.needsresolve ${p4.needsresolve} after submit | p4.needsresolve ${p4.needsresolve} after submit | ||||
needsresolveproperty ${needsresolve} after submit | |||||
changeproperty ${mychange} after submit | |||||
</echo> | </echo> | ||||
</target> | </target> | ||||
</project> | </project> |
@@ -1,7 +1,7 @@ | |||||
/* | /* | ||||
* The Apache Software License, Version 1.1 | * The Apache Software License, Version 1.1 | ||||
* | * | ||||
* Copyright (c) 2000-2003 The Apache Software Foundation. All rights | |||||
* Copyright (c) 2000-2004 The Apache Software Foundation. All rights | |||||
* reserved. | * reserved. | ||||
* | * | ||||
* Redistribution and use in source and binary forms, with or without | * Redistribution and use in source and binary forms, with or without | ||||
@@ -83,7 +83,14 @@ public class P4Submit extends P4Base { | |||||
* change list number | * change list number | ||||
*/ | */ | ||||
public String change; | public String change; | ||||
/** | |||||
* change property | |||||
*/ | |||||
private String changeProperty; | |||||
/** | |||||
* needsresolveproperty | |||||
*/ | |||||
private String needsResolveProperty; | |||||
/** | /** | ||||
* set the change list number to submit | * set the change list number to submit | ||||
* @param change The changelist number to submit; required. | * @param change The changelist number to submit; required. | ||||
@@ -91,6 +98,23 @@ public class P4Submit extends P4Base { | |||||
public void setChange(String change) { | public void setChange(String change) { | ||||
this.change = change; | this.change = change; | ||||
} | } | ||||
/** | |||||
* property defining the change number if the change number gets renumbered | |||||
* @param changeProperty name of a new property to which the change number | |||||
* will be assigned if it changes | |||||
* @since ant 1.6.1 | |||||
*/ | |||||
public void setChangeProperty(String changeProperty) { | |||||
this.changeProperty = changeProperty; | |||||
} | |||||
/** | |||||
* property defining the need to resolve the change list | |||||
* @param needsResolveProperty a property which will be set if the change needs resolve | |||||
* @since ant 1.6.1 | |||||
*/ | |||||
public void setNeedsResolveProperty(String needsResolveProperty) { | |||||
this.needsResolveProperty = needsResolveProperty; | |||||
} | |||||
/** | /** | ||||
* do the work | * do the work | ||||
@@ -133,6 +157,9 @@ public class P4Submit extends P4Base { | |||||
int changenumber = Integer.parseInt(chnum); | int changenumber = Integer.parseInt(chnum); | ||||
log("Perforce change renamed " + changenumber, Project.MSG_INFO); | log("Perforce change renamed " + changenumber, Project.MSG_INFO); | ||||
getProject().setProperty("p4.change", "" + changenumber); | getProject().setProperty("p4.change", "" + changenumber); | ||||
if (changeProperty != null) { | |||||
getProject().setNewProperty(changeProperty, chnum); | |||||
} | |||||
found = false; | found = false; | ||||
} | } | ||||
if (((myarray.elementAt(counter))).equals("renamed")) { | if (((myarray.elementAt(counter))).equals("renamed")) { | ||||
@@ -148,6 +175,9 @@ public class P4Submit extends P4Base { | |||||
} | } | ||||
if (util.match("/p4 submit -c/", line)) { | if (util.match("/p4 submit -c/", line)) { | ||||
getProject().setProperty("p4.needsresolve", "1"); | getProject().setProperty("p4.needsresolve", "1"); | ||||
if (needsResolveProperty != null) { | |||||
getProject().setNewProperty(needsResolveProperty, "true"); | |||||
} | |||||
} | } | ||||
} | } | ||||