Author: cziegeler
Date: Thu Dec 16 02:39:13 2004
New Revision: 122542

URL: http://svn.apache.org/viewcvs?view=rev&rev=122542
Log:
Fix bugs in transformer and cleanup code
Modified:
   
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/reading/ProxyReader.java
   
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/EventLinkTransformer.java
   
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/LinkTransformer.java
   
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/NewEventLinkTransformer.java

Modified: 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/reading/ProxyReader.java
Url: 
http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/reading/ProxyReader.java?view=diff&rev=122542&p1=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/reading/ProxyReader.java&r1=122541&p2=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/reading/ProxyReader.java&r2=122542
==============================================================================
--- 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/reading/ProxyReader.java
       (original)
+++ 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/reading/ProxyReader.java
       Thu Dec 16 02:39:13 2004
@@ -67,12 +67,11 @@
     /**
      * @see 
org.apache.cocoon.sitemap.SitemapModelComponent#setup(SourceResolver, Map, 
String, Parameters)
      */
-    public void setup(
-        SourceResolver resolver,
-        Map objectModel,
-        String src,
-        Parameters par)
-        throws ProcessingException, SAXException, IOException {
+    public void setup(SourceResolver resolver,
+                      Map objectModel,
+                      String src,
+                      Parameters par)
+    throws ProcessingException, SAXException, IOException {
         super.setup(resolver, objectModel, src, par);
 
         request = ObjectModelHelper.getRequest(objectModel);
@@ -99,17 +98,11 @@
     }
 
     /**
-     * @see org.apache.cocoon.reading.Reader#generate()
-     */
-    public void generate() throws IOException {
-        processRequest();
-    }
-
-    /**
      * Send the request to the external WebServer
      * @throws IOException on any exception that occures
+     * @see org.apache.cocoon.reading.Reader#generate()
      */
-    protected void processRequest() throws IOException {
+    public void generate() throws IOException {
         String link = request.getRequestURI();
         link =
             link.substring(

Modified: 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/EventLinkTransformer.java
Url: 
http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/EventLinkTransformer.java?view=diff&rev=122542&p1=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/EventLinkTransformer.java&r1=122541&p2=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/EventLinkTransformer.java&r2=122542
==============================================================================
--- 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/EventLinkTransformer.java
       (original)
+++ 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/EventLinkTransformer.java
       Thu Dec 16 02:39:13 2004
@@ -49,7 +49,7 @@
  *   
  * @author <a href="mailto:[EMAIL PROTECTED]">Bj&ouml;rn L&uuml;tkemeier</a>
  * 
- * @version CVS $Id: EventLinkTransformer.java,v 1.9 2004/04/25 20:02:27 haul 
Exp $
+ * @version CVS $Id$
  */
 public class EventLinkTransformer 
 extends AbstractCopletTransformer {
@@ -82,12 +82,12 @@
     /**
      * The attribute defining the link inside an EVENT_ELEM tag.
      */
-    private String attributeName = null;
+    private String attributeName;
 
     /**
      * The element defining the link inside an EVENT_ELEM tag.
      */
-    private String elementName = null;
+    private String elementName;
     
     /**
      * Used to store elements' attributes between startTransformingElement and 
endTransformingElement. 

Modified: 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/LinkTransformer.java
Url: 
http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/LinkTransformer.java?view=diff&rev=122542&p1=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/LinkTransformer.java&r1=122541&p2=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/LinkTransformer.java&r2=122542
==============================================================================
--- 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/LinkTransformer.java
    (original)
+++ 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/LinkTransformer.java
    Thu Dec 16 02:39:13 2004
@@ -54,7 +54,7 @@
  * @author <a href="mailto:[EMAIL PROTECTED]">Gernot Koller</a>
  * @author <a href="mailto:[EMAIL PROTECTED]">Friedrich Klenner</a> 
  * 
- * @version CVS $Id: LinkTransformer.java,v 1.5 2004/03/05 13:02:16 
bdelacretaz Exp $
+ * @version CVS $Id$
  */
 public class LinkTransformer
     extends AbstractTransformer
@@ -68,22 +68,22 @@
     /**
      * Used for appending a request parameter containing the coplet id
      */
-    protected String copletIdParamString = null;
+    protected String copletIdParamString;
 
     /**
      * Used for appending a request parameter containing the portal name
      */
-    protected String portalNameParamString = null;
+    protected String portalNameParamString;
 
     /**
      * The coplet instance data
      */
-    protected CopletInstanceData copletInstanceData = null;
+    protected CopletInstanceData copletInstanceData;
 
     /**
      * The html document base uri
      */
-    protected String documentBase = null;
+    protected String documentBase;
 
     /**
      * Used to store elements' name between startTransformingElement and 
endTransformingElement. 
@@ -105,12 +105,11 @@
     /**
      * @see AbstractTransformer#setup(SourceResolver, Map, String, Parameters)
      */
-    public void setup(
-        SourceResolver resolver,
+    public void setup(SourceResolver resolver,
         Map objectModel,
         String src,
         Parameters par)
-        throws ProcessingException, SAXException, IOException {
+    throws ProcessingException, SAXException, IOException {
         copletInstanceData =
             ProxyTransformer.getInstanceData(
                 this.manager,
@@ -131,6 +130,7 @@
      * All instance variables are set to <code>null</code>.
      */
     public void recycle() {
+        super.recycle();
         copletInstanceData = null;
         elementStack.clear();
         copletIdParamString = null;
@@ -161,7 +161,7 @@
      */
     public void startElement(String uri, String name, String raw,
                              Attributes attributes)
-        throws SAXException {
+    throws SAXException {
 
         if ("form".equalsIgnoreCase(name)) {
             handleTag(
@@ -172,17 +172,13 @@
                 attributes,
                 true,
                 (attributes.getIndex("target") > -1));
-        }
-        else if ("script".equalsIgnoreCase(name)) {
+        } else if ("script".equalsIgnoreCase(name)) {
             handleTag("src", uri, name, raw, attributes, false, false);
-        }
-        else if ("img".equalsIgnoreCase(name)) {
+        } else if ("img".equalsIgnoreCase(name)) {
             handleTag("src", uri, name, raw, attributes, false, false);
-        }
-        else if ("link".equalsIgnoreCase(name)) {
+        } else if ("link".equalsIgnoreCase(name)) {
             handleTag("href", uri, name, raw, attributes, false, false);
-        }
-        else if ("a".equalsIgnoreCase(name)) {
+        } else if ("a".equalsIgnoreCase(name)) {
             handleTag(
                 "href",
                 uri,
@@ -191,19 +187,15 @@
                 attributes,
                 true,
                 (attributes.getIndex("target") > -1));
-        }
-        else if ("menu-item".equalsIgnoreCase(name)) {
+        } else if ("menu-item".equalsIgnoreCase(name)) {
             handleTag("href", uri, name, raw, attributes, true, false);
-        }
-        else if ("input".equalsIgnoreCase(name)) {
+        } else if ("input".equalsIgnoreCase(name)) {
             handleTag("src", uri, name, raw, attributes, false, false);
-        }
-        else if ("applet".equalsIgnoreCase(name)) {
+        } else if ("applet".equalsIgnoreCase(name)) {
             if (attributes.getIndex("codebase") > -1) {
                 handleTag("codebase", uri, name, raw, attributes, false, true);
             }
-        }
-        else {
+        } else {
             super.startElement(uri, name, raw, attributes);
         }
     }
@@ -212,7 +204,7 @@
      * @see org.xml.sax.ContentHandler#endElement(String, String, String)
      */
     public void endElement(String uri, String name, String raw)
-        throws SAXException {
+    throws SAXException {
         String elementName = null;
 
         if (!elementStack.empty()) {
@@ -220,12 +212,12 @@
         }
 
         if (elementName != null && elementName.equals(name)) {
+            elementStack.pop();
             super.endElement(
                 NewEventLinkTransformer.NAMESPACE_URI,
                 NewEventLinkTransformer.EVENT_ELEM,
                 NAMESPACE_PREFIX + ":" + NewEventLinkTransformer.EVENT_ELEM);
-        }
-        else {
+        } else {
             super.endElement(uri, name, raw);
         }
     }
@@ -262,15 +254,14 @@
      * @param direct True signals that the uri should point directly to the 
external resource (no proxys)
      * @throws SAXException if an invalid URL was detected.
      */
-    public void handleTag(
-        String attributeName,
-        String uri,
-        String elementName,
-        String raw,
-        Attributes attributes,
-        boolean eventLink,
-        boolean direct)
-        throws SAXException {
+    public void handleTag(String attributeName,
+                          String uri,
+                          String elementName,
+                          String raw,
+                          Attributes attributes,
+                          boolean eventLink,
+                          boolean direct)
+    throws SAXException {
         String remoteURI = attributes.getValue(attributeName);
 
         if ((remoteURI == null)
@@ -281,21 +272,18 @@
             || remoteURI.startsWith("javascript:")
             || remoteURI.startsWith("mailto:";)) {
             super.startElement(uri, elementName, raw, attributes);
-        }
-        else {
+        } else {
             if (attributes.getIndex("target") > -1 || direct) {
                 try {
                     remoteURI =
                         ProxyTransformer.resolveURI(remoteURI, documentBase);
                     eventLink = false;
-                }
-                catch (MalformedURLException ex) {
+                } catch (MalformedURLException ex) {
                     throw new SAXException(
                         "Invalid URL encountered: " + remoteURI,
                         ex);
                 }
-            }
-            else {
+            } else {
                 remoteURI = this.buildUrlString(remoteURI, !eventLink);
             }
 
@@ -307,8 +295,7 @@
                     elementName,
                     attributeName,
                     newAttributes);
-            }
-            else {
+            } else {
                 super.startElement(uri, elementName, raw, newAttributes);
             }
         }
@@ -321,10 +308,9 @@
      * @param attributes List of attributes
      * @return The modified List of attributes
      */
-    protected Attributes modifyLinkAttribute(
-        String attribute,
-        String remoteURI,
-        Attributes attributes) {
+    protected Attributes modifyLinkAttribute(String attribute,
+                                             String remoteURI,
+                                             Attributes attributes) {
         AttributesImpl newAttributes = new AttributesImpl(attributes);
 
         int index = newAttributes.getIndex(attribute);
@@ -340,17 +326,15 @@
      * @param attributes Original list of attributes
      * @throws SAXException
      */
-    protected void startEventLinkElement(
-        String element,
-        String attribute,
-        Attributes attributes)
-        throws SAXException {
+    protected void startEventLinkElement(String element,
+                                         String attribute,
+                                         Attributes attributes)
+    throws SAXException {
         elementStack.push(element);
         AttributesImpl eventAttributes = null;
         if (attributes instanceof AttributesImpl) {
             eventAttributes = (AttributesImpl) attributes;
-        }
-        else {
+        } else {
             eventAttributes = new AttributesImpl(attributes);
         }
 
@@ -380,9 +364,8 @@
      * @return the converted uri
      * FIXME: anchors (#) should be treated right!
      */
-    protected String buildUrlString(
-        String uri,
-        boolean applyPrefixAndPortalParams) {
+    protected String buildUrlString(String uri,
+                                    boolean applyPrefixAndPortalParams) {
         StringBuffer uriBuffer = new StringBuffer(uri.length());
 
         int index_semikolon = uri.indexOf(";");

Modified: 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/NewEventLinkTransformer.java
Url: 
http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/NewEventLinkTransformer.java?view=diff&rev=122542&p1=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/NewEventLinkTransformer.java&r1=122541&p2=cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/NewEventLinkTransformer.java&r2=122542
==============================================================================
--- 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/NewEventLinkTransformer.java
    (original)
+++ 
cocoon/branches/BRANCH_2_1_X/src/blocks/portal/java/org/apache/cocoon/portal/transformation/NewEventLinkTransformer.java
    Thu Dec 16 02:39:13 2004
@@ -15,8 +15,6 @@
  */
 package org.apache.cocoon.portal.transformation;
 
-import java.util.Stack;
-
 import org.apache.cocoon.portal.coplet.CopletInstanceData;
 import org.apache.cocoon.portal.event.impl.CopletLinkEvent;
 import org.xml.sax.Attributes;
@@ -25,7 +23,7 @@
 import org.xml.sax.helpers.AttributesImpl;
 
 /**
- * This transformer ist used to replace links (URIs) from elements
+ * This transformer is used to replace links (URIs) from elements
  * like &lt;a href="URI"&gt; or &lt;form action="URI"&gt; with portal
  * event uris. Therefore the transformer searches for &lt;eventlink&gt;
  * elements replaces the URI form the attribute which is specified within
@@ -80,19 +78,6 @@
     public static final String ELEMENT_ATTR = "element";
 
     /**
-     * Used to store elements' name between startTransformingElement and 
endTransformingElement.
-     */
-    private Stack elementStack = new Stack();
-
-    /**
-     * @see org.apache.avalon.excalibur.pool.Recyclable#recycle()
-     */
-    public void recycle() {
-        super.recycle();
-        this.elementStack.clear();
-    }
-
-    /**
      * @see java.lang.Object#Object()
      */
     public NewEventLinkTransformer() {
@@ -204,7 +189,7 @@
             newAttributes.setValue(index, eventLink);
         }
 
-        elementStack.push(elementName);
+        this.stack.push(elementName);
 
         contentHandler.startElement(
             "",
@@ -262,7 +247,7 @@
      */
     public void endTransformingElement(String uri, String name, String raw)
     throws SAXException {
-        String elementName = (String) elementStack.pop();
+        String elementName = (String) this.stack.pop();
         contentHandler.endElement("", elementName, elementName);
     }
 }

Reply via email to