You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by rf...@apache.org on 2008/02/17 17:28:31 UTC
svn commit: r628508 - in
/lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation:
AbstractLinkTransformer.java UuidToUrlTransformer.java
Author: rfrovarp
Date: Sun Feb 17 08:28:30 2008
New Revision: 628508
URL: http://svn.apache.org/viewvc?rev=628508&view=rev
Log:
Fixes 44416
Modified:
lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/AbstractLinkTransformer.java
lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java
Modified: lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/AbstractLinkTransformer.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/AbstractLinkTransformer.java?rev=628508&r1=628507&r2=628508&view=diff
==============================================================================
--- lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/AbstractLinkTransformer.java (original)
+++ lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/AbstractLinkTransformer.java Sun Feb 17 08:28:30 2008
@@ -23,6 +23,7 @@
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
+import java.util.Stack;
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.ConfigurationException;
@@ -160,6 +161,8 @@
protected String indent = "";
protected boolean ignoreLinkElement = false;
+ private Stack ignoreLinkElementStack = new Stack();
+ protected boolean useIgnore = false;
/**
* @see org.xml.sax.ContentHandler#startElement(java.lang.String,
@@ -203,15 +206,23 @@
getLogger().debug(this.indent + "ignoreAElement: " + this.ignoreLinkElement);
}
- if (!(!configs.isEmpty() && this.ignoreLinkElement)) {
- if (newAttrs != null) {
- attrs = newAttrs;
- }
- super.startElement(uri, name, qname, attrs);
- if (getLogger().isDebugEnabled()) {
- getLogger().debug(this.indent + "<" + qname + "> sent");
+ // use existsMatching to match up with ednElement
+ if (existsMatchingConfiguration(uri,name) && this.useIgnore) {
+ if(this.ignoreLinkElement) {
+ ignoreLinkElementStack.push(Boolean.TRUE);
+ return;
+ } else {
+ ignoreLinkElementStack.push(Boolean.FALSE);
}
}
+
+ if (newAttrs != null) {
+ attrs = newAttrs;
+ }
+ super.startElement(uri, name, qname, attrs);
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug(this.indent + "<" + qname + "> sent");
+ }
}
/**
@@ -238,14 +249,17 @@
this.indent = this.indent.substring(2);
getLogger().debug(this.indent + "</" + qname + ">");
}
- if (existsMatchingConfiguration(uri, name) && this.ignoreLinkElement) {
- this.ignoreLinkElement = false;
- } else {
- if (getLogger().isDebugEnabled()) {
- getLogger().debug(this.indent + "</" + qname + "> sent");
+ if (existsMatchingConfiguration(uri, name) && this.useIgnore) {
+ if( ((Boolean)ignoreLinkElementStack.pop()).booleanValue()) {
+ this.ignoreLinkElement = false;
+ return;
}
- super.endElement(uri, name, qname);
}
+
+ if (getLogger().isDebugEnabled()) {
+ getLogger().debug(this.indent + "</" + qname + "> sent");
+ }
+ super.endElement(uri, name, qname);
}
/**
Modified: lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java?rev=628508&r1=628507&r2=628508&view=diff
==============================================================================
--- lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java (original)
+++ lenya/trunk/src/modules-core/linking/java/src/org/apache/lenya/cms/cocoon/transformation/UuidToUrlTransformer.java Sun Feb 17 08:28:30 2008
@@ -107,6 +107,7 @@
Request _request = ObjectModelHelper.getRequest(_objectModel);
+ this.useIgnore = true;
Source source = null;
try {
Session session = RepositoryUtil.getSession(this.manager, _request);
@@ -345,4 +346,4 @@
return this.validity;
}
-}
\ No newline at end of file
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org