You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by wo...@apache.org on 2009/04/01 10:44:48 UTC

svn commit: r760816 - in /portals/pluto/trunk: pluto-container-api/src/main/java/org/apache/pluto/container/ pluto-container/src/main/java/org/apache/pluto/container/impl/ pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/

Author: woonsan
Date: Wed Apr  1 08:44:46 2009
New Revision: 760816

URL: http://svn.apache.org/viewvc?rev=760816&view=rev
Log:
PLUTO-544: Moving the element creation codes into PortletResponseContextImpl to allow more optimized DOM element handling.

Modified:
    portals/pluto/trunk/pluto-container-api/src/main/java/org/apache/pluto/container/PortletResponseContext.java
    portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletResponseImpl.java
    portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletResponseContextImpl.java

Modified: portals/pluto/trunk/pluto-container-api/src/main/java/org/apache/pluto/container/PortletResponseContext.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-container-api/src/main/java/org/apache/pluto/container/PortletResponseContext.java?rev=760816&r1=760815&r2=760816&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-container-api/src/main/java/org/apache/pluto/container/PortletResponseContext.java (original)
+++ portals/pluto/trunk/pluto-container-api/src/main/java/org/apache/pluto/container/PortletResponseContext.java Wed Apr  1 08:44:46 2009
@@ -20,6 +20,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.w3c.dom.DOMException;
 import org.w3c.dom.Element;
 
 /**
@@ -41,6 +42,7 @@
     void addProperty(String key, Element element);
     void addProperty(String key, String value);
     void setProperty(String key, String value);
+    Element createElement(String tagName) throws DOMException;
 
     /**
      * Closing the response context means processing has been completed and

Modified: portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletResponseImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletResponseImpl.java?rev=760816&r1=760815&r2=760816&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletResponseImpl.java (original)
+++ portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/container/impl/PortletResponseImpl.java Wed Apr  1 08:44:46 2009
@@ -151,19 +151,8 @@
     
     public Element createElement(String tagName) throws DOMException
     {
-        DocumentBuilderFactory dbfac = DocumentBuilderFactory.newInstance();
-        DocumentBuilder docBuilder;
-        try
-        {
-            docBuilder = dbfac.newDocumentBuilder();
-            Document doc = docBuilder.newDocument();
-            return doc.createElement(tagName);
-        }
-        catch (ParserConfigurationException e)
-        {
-            LOG.warn(e);
-            throw new DOMException((short) 0, "Initialization failure");
-        }
+        ArgumentUtility.validateNotEmpty("tagName", tagName);
+        return responseContext.createElement(tagName);
     }
     
     public String encodeURL(String path)

Modified: portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletResponseContextImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletResponseContextImpl.java?rev=760816&r1=760815&r2=760816&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletResponseContextImpl.java (original)
+++ portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/container/PortletResponseContextImpl.java Wed Apr  1 08:44:46 2009
@@ -19,6 +19,9 @@
 import javax.servlet.http.Cookie;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
 
 import org.apache.pluto.container.PortletContainer;
 import org.apache.pluto.container.PortletResponseContext;
@@ -26,6 +29,8 @@
 import org.apache.pluto.container.ResourceURLProvider;
 import org.apache.pluto.driver.core.PortalRequestContext;
 import org.apache.pluto.driver.url.PortalURL;
+import org.w3c.dom.DOMException;
+import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
 /**
@@ -92,6 +97,23 @@
     {
         // not supported
     }
+    
+    public Element createElement(String tagName) throws DOMException
+    {
+        DocumentBuilderFactory dbfac = DocumentBuilderFactory.newInstance();
+        DocumentBuilder docBuilder;
+        
+        try
+        {
+            docBuilder = dbfac.newDocumentBuilder();
+            Document doc = docBuilder.newDocument();
+            return doc.createElement(tagName);
+        }
+        catch (ParserConfigurationException e)
+        {
+            throw new DOMException((short) 0, "Initialization failure");
+        }
+    }
 
     public void close()
     {