You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@velocity.apache.org by sc...@apache.org on 2011/07/27 23:50:22 UTC
svn commit: r1151642 - in /velocity/tools/branches/2.0.x/src:
main/java/org/apache/velocity/tools/view/tools/LinkTool.java
test/java/org/apache/velocity/tools/test/blackbox/LinkToolTests.java
Author: schultz
Date: Wed Jul 27 21:50:21 2011
New Revision: 1151642
URL: http://svn.apache.org/viewvc?rev=1151642&view=rev
Log:
Fixed VELTOOLS-148: LinkTool.addAllParameters causes "ignored" parameters to pollute parent link objects
- Overrode generic.LinkTool.duplicate(boolean) to clone parametersToIgnore
Modified:
velocity/tools/branches/2.0.x/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java
velocity/tools/branches/2.0.x/src/test/java/org/apache/velocity/tools/test/blackbox/LinkToolTests.java
Modified: velocity/tools/branches/2.0.x/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java
URL: http://svn.apache.org/viewvc/velocity/tools/branches/2.0.x/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java?rev=1151642&r1=1151641&r2=1151642&view=diff
==============================================================================
--- velocity/tools/branches/2.0.x/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java (original)
+++ velocity/tools/branches/2.0.x/src/main/java/org/apache/velocity/tools/view/tools/LinkTool.java Wed Jul 27 21:50:21 2011
@@ -299,4 +299,14 @@ public class LinkTool extends org.apache
}
}
+ @Override
+ protected LinkTool duplicate(boolean deep)
+ {
+ LinkTool that = (LinkTool)super.duplicate(deep);
+
+ if(parametersToIgnore != null)
+ that.parametersToIgnore = new HashSet<String>(parametersToIgnore);
+
+ return that;
+ }
}
Modified: velocity/tools/branches/2.0.x/src/test/java/org/apache/velocity/tools/test/blackbox/LinkToolTests.java
URL: http://svn.apache.org/viewvc/velocity/tools/branches/2.0.x/src/test/java/org/apache/velocity/tools/test/blackbox/LinkToolTests.java?rev=1151642&r1=1151641&r2=1151642&view=diff
==============================================================================
--- velocity/tools/branches/2.0.x/src/test/java/org/apache/velocity/tools/test/blackbox/LinkToolTests.java (original)
+++ velocity/tools/branches/2.0.x/src/test/java/org/apache/velocity/tools/test/blackbox/LinkToolTests.java Wed Jul 27 21:50:21 2011
@@ -185,4 +185,17 @@ public class LinkToolTests
Assert.assertEquals("/test/target?a=a&a=b&a=c&a=d", url);
}
+ public @Test void test_VELTOOLS_148()
+ {
+ LinkTool link = newLinkTool("a", new String[] { "a", "b", "c" });
+
+ LinkTool forward = link.setRelative("/foo")
+ .addQueryData("bar", "baz");
+
+ Assert.assertEquals("/test/foo?bar=baz&a=a&a=b&a=c",
+ forward.addAllParameters().toString());
+
+ Assert.assertEquals("/test/foo?bar=baz&a=a&a=b&a=c",
+ forward.addAllParameters().toString());
+ }
}