haul 2003/06/08 11:07:11
Modified: src/java/org/apache/cocoon/components/modules/input
BaseLinkModule.java
Log:
Kudos to volker.schmitt.at.basf-it-services.com for this patch
Revision Changes Path
1.3 +39 -33
cocoon-2.1/src/java/org/apache/cocoon/components/modules/input/BaseLinkModule.java
Index: BaseLinkModule.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/java/org/apache/cocoon/components/modules/input/BaseLinkModule.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- BaseLinkModule.java 4 Jun 2003 13:06:48 -0000 1.2
+++ BaseLinkModule.java 8 Jun 2003 18:07:11 -0000 1.3
@@ -52,7 +52,6 @@
package org.apache.cocoon.components.modules.input;
import java.util.Iterator;
-import java.util.LinkedList;
import java.util.Map;
import java.util.Vector;
@@ -74,52 +73,59 @@
public class BaseLinkModule extends AbstractInputModule implements ThreadSafe {
final static Vector returnNames = new Vector() {
- {
- add("RequestBaseLink");
- add("SitemapBaseLink");
- }
- };
-
- public Object getAttribute(final String name, final Configuration modeConf,
final Map objectModel ) throws ConfigurationException {
-
- String uri;
- if (name.equals("SitemapBaseLink"))
+ {
+ add("RequestBaseLink");
+ add("SitemapBaseLink");
+ }
+ };
+
+ public Object getAttribute(
+ final String name,
+ final Configuration modeConf,
+ final Map objectModel)
+ throws ConfigurationException {
+
+ String uri;
+ if (name.equals("SitemapBaseLink"))
uri = ObjectModelHelper.getRequest(objectModel).getSitemapURI();
- else if (name.equals("RequestBaseLink"))
+ else if (name.equals("RequestBaseLink"))
uri = ObjectModelHelper.getRequest(objectModel).getRequestURI();
- else uri = "";
-
+ else
+ uri = "";
+
if (uri.startsWith("/")) {
uri = uri.substring(1);
}
-
+
StringBuffer result = new StringBuffer(uri.length());
-
+
int nextIndex = 0;
- while ((nextIndex = uri.indexOf ('/', nextIndex) + 1) > 0) {
+ while ((nextIndex = uri.indexOf('/', nextIndex) + 1) > 0) {
result.append("../");
}
-
+
if (getLogger().isDebugEnabled())
- getLogger().debug ("Returns " + result + " for uri " + uri + " and
attribute " + name);
-
+ getLogger().debug("Returns " + result + " for uri " + uri + " and
attribute " + name);
+
return result.toString();
}
-
-
- public Iterator getAttributeNames(final Configuration modeConf, final Map
objectModel) throws ConfigurationException {
-
+
+ public Iterator getAttributeNames(final Configuration modeConf, final Map
objectModel)
+ throws ConfigurationException {
+
return RequestURIModule.returnNames.iterator();
}
-
- public Object[] getAttributeValues(final String name, final Configuration
modeConf, final Map objectModel )
+
+ public Object[] getAttributeValues(
+ final String name,
+ final Configuration modeConf,
+ final Map objectModel)
throws ConfigurationException {
-
- return (new LinkedList() {
- {
- add(getAttribute(name, modeConf, objectModel) );
- }
- }).toArray();
+
+ Object[] result = new Object[1];
+ result[0] = getAttribute(name, modeConf, objectModel);
+ return result;
+
}
-
+
}