You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2013/02/06 09:52:00 UTC
[23/38] git commit: WICKET-5020 InlineEnclosureHandler always uses
"wicket" namespace
WICKET-5020 InlineEnclosureHandler always uses "wicket" namespace
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/63adba3f
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/63adba3f
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/63adba3f
Branch: refs/heads/reference-guide
Commit: 63adba3f02a487c720b13212afed8fcc31327918
Parents: 2e06821
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Thu Jan 31 15:25:19 2013 +0100
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Thu Jan 31 15:25:19 2013 +0100
----------------------------------------------------------------------
.../parser/filter/InlineEnclosureHandler.java | 35 +++++++++++----
.../markup/html/internal/AjaxEnclosureTest.java | 18 +++++++-
.../markup/html/internal/TogglePageTest.java | 16 +++++++
3 files changed, 59 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/63adba3f/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/InlineEnclosureHandler.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/InlineEnclosureHandler.java b/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/InlineEnclosureHandler.java
index 76767b8..7e9ea8e 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/InlineEnclosureHandler.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/InlineEnclosureHandler.java
@@ -59,7 +59,7 @@ public final class InlineEnclosureHandler extends AbstractMarkupFilter
public final static String INLINE_ENCLOSURE_ID_PREFIX = "InlineEnclosure-";
/** Attribute to identify inline enclosures */
- public final static String INLINE_ENCLOSURE_ATTRIBUTE_NAME = "wicket:enclosure";
+ public final static String INLINE_ENCLOSURE_ATTRIBUTE_NAME = "enclosure";
/** enclosures inside enclosures */
private Stack<ComponentTag> enclosures;
@@ -87,7 +87,7 @@ public final class InlineEnclosureHandler extends AbstractMarkupFilter
}
// Has wicket:enclosure attribute?
- String enclosureAttr = getInlineEnclosureAttribute(tag);
+ String enclosureAttr = getAttribute(tag, null);
if (enclosureAttr != null)
{
if (tag.isOpen())
@@ -144,10 +144,10 @@ public final class InlineEnclosureHandler extends AbstractMarkupFilter
for (int i = enclosures.size() - 1; i >= 0; i--)
{
ComponentTag lastEnclosure = enclosures.get(i);
- String attr = getInlineEnclosureAttribute(lastEnclosure);
+ String attr = getAttribute(lastEnclosure, null);
if (Strings.isEmpty(attr) == true)
{
- lastEnclosure.getAttributes().put(INLINE_ENCLOSURE_ATTRIBUTE_NAME,
+ lastEnclosure.getAttributes().put(getInlineEnclosureAttributeName(null),
tag.getId());
lastEnclosure.setModified(true);
}
@@ -156,7 +156,7 @@ public final class InlineEnclosureHandler extends AbstractMarkupFilter
else if (tag.isClose() && tag.closes(enclosures.peek()))
{
ComponentTag lastEnclosure = enclosures.pop();
- String attr = getInlineEnclosureAttribute(lastEnclosure);
+ String attr = getAttribute(lastEnclosure, null);
if (Strings.isEmpty(attr) == true)
{
throw new ParseException("Did not find any child for InlineEnclosure. Tag:" +
@@ -170,18 +170,31 @@ public final class InlineEnclosureHandler extends AbstractMarkupFilter
/**
* @param tag
- * @return The wicket:enclosure attribute or null if not found
+ * The ComponentTag of the markup element with wicket:enclosure attribute
+ * @return The value of wicket:enclosure attribute or null if not found
+ * @deprecated This method always uses 'wicket:' as a namespace. It will be removed in Wicket 7
*/
- public final static String getInlineEnclosureAttribute(final ComponentTag tag)
+ @Deprecated
+ public static final String getInlineEnclosureAttribute(final ComponentTag tag)
{
- return tag.getAttributes().getString(INLINE_ENCLOSURE_ATTRIBUTE_NAME);
+ return tag.getAttributes().getString("wicket:" + INLINE_ENCLOSURE_ATTRIBUTE_NAME);
+ }
+
+ /**
+ * @param tag
+ * The ComponentTag of the markup element with wicket:enclosure attribute
+ * @return The value of wicket:enclosure attribute or null if not found
+ */
+ private String getAttribute(final ComponentTag tag, MarkupStream markupStream)
+ {
+ return tag.getAttributes().getString(getInlineEnclosureAttributeName(markupStream));
}
@Override
public Component resolve(final MarkupContainer container, final MarkupStream markupStream,
final ComponentTag tag)
{
- String inlineEnclosureChildId = getInlineEnclosureAttribute(tag);
+ String inlineEnclosureChildId = getAttribute(tag, markupStream);
if (Strings.isEmpty(inlineEnclosureChildId) == false)
{
String id = tag.getId();
@@ -196,4 +209,8 @@ public final class InlineEnclosureHandler extends AbstractMarkupFilter
// We were not able to handle the tag
return null;
}
+
+ private String getInlineEnclosureAttributeName(MarkupStream markupStream) {
+ return getWicketNamespace(markupStream) + ':' + INLINE_ENCLOSURE_ATTRIBUTE_NAME;
+ }
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/63adba3f/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/AjaxEnclosureTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/AjaxEnclosureTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/AjaxEnclosureTest.java
index 4ed0914..9955eae 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/AjaxEnclosureTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/AjaxEnclosureTest.java
@@ -22,6 +22,8 @@ import org.apache.wicket.Component;
import org.apache.wicket.Page;
import org.apache.wicket.WicketTestCase;
import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.mock.MockApplication;
+import org.apache.wicket.protocol.http.WebApplication;
import org.junit.Test;
@@ -38,7 +40,21 @@ public class AjaxEnclosureTest extends WicketTestCase
private final String inlineEnclosureVisiblePattern = "<div id=\"" + inlineEnclosureIdPrefix +
"1\">";
-
+ @Override
+ protected WebApplication newApplication()
+ {
+ WebApplication webApplication = new MockApplication()
+ {
+ @Override
+ protected void init()
+ {
+ super.init();
+ getMarkupSettings().setStripWicketTags(true);
+ }
+ };
+ return webApplication;
+ }
+
/**
* Test toggling the controlling child inside the inline enclosure
*/
http://git-wip-us.apache.org/repos/asf/wicket/blob/63adba3f/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/TogglePageTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/TogglePageTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/TogglePageTest.java
index 90c0705..0380f8d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/TogglePageTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/TogglePageTest.java
@@ -21,6 +21,8 @@ import java.util.regex.Pattern;
import org.apache.wicket.Component;
import org.apache.wicket.WicketTestCase;
import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.mock.MockApplication;
+import org.apache.wicket.protocol.http.WebApplication;
/**
@@ -29,6 +31,20 @@ import org.apache.wicket.markup.html.basic.Label;
public class TogglePageTest extends WicketTestCase
{
+ @Override
+ protected WebApplication newApplication()
+ {
+ WebApplication webApplication = new MockApplication()
+ {
+ @Override
+ protected void init()
+ {
+ super.init();
+ getMarkupSettings().setStripWicketTags(true);
+ }
+ };
+ return webApplication;
+ }
/**
*