Author: cziegeler
Date: Mon Jun  8 08:06:07 2009
New Revision: 782554

URL: http://svn.apache.org/viewvc?rev=782554&view=rev
Log:
Update to new rewriter.

Modified:
    
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventImpl.java
    
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventProviderImpl.java
    
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/request/LinkTransformerFactory.java

Modified: 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventImpl.java?rev=782554&r1=782553&r2=782554&view=diff
==============================================================================
--- 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventImpl.java
 (original)
+++ 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventImpl.java
 Mon Jun  8 08:06:07 2009
@@ -16,37 +16,46 @@
  */
 package org.apache.sling.portal.container.internal;
 
+import java.io.Serializable;
+
 import javax.portlet.Event;
 import javax.xml.namespace.QName;
 
 /**
- * Implementation of JSR-286 <code>Event</code>.
- *
- * @since 2.0
+ * Implementation of the event.
  */
 public class EventImpl implements Event {
 
-       private QName _qname;
-       private java.io.Serializable _value;
-       
+       private final QName qname;
+       private final Serializable value;
+
        public EventImpl(QName qname){
-               _qname = qname;
+        this(qname, null);
        }
-       
+
        public EventImpl(QName qname, java.io.Serializable value){
-               this(qname);
-               _value = value;
+        this.qname = qname;
+               this.value = value;
        }
 
+       /**
+        * @see javax.portlet.Event#getQName()
+        */
        public QName getQName() {
-               return _qname;
+               return qname;
        }
 
-       public java.io.Serializable getValue() {
-               return _value;
+       /**
+        * @see javax.portlet.Event#getValue()
+        */
+       public Serializable getValue() {
+               return value;
        }
 
+       /**
+        * @see javax.portlet.Event#getName()
+        */
        public String getName() {
-               return _qname.getLocalPart();
+               return qname.getLocalPart();
        }
 }

Modified: 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventProviderImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventProviderImpl.java?rev=782554&r1=782553&r2=782554&view=diff
==============================================================================
--- 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventProviderImpl.java
 (original)
+++ 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/EventProviderImpl.java
 Mon Jun  8 08:06:07 2009
@@ -17,84 +17,39 @@
 package org.apache.sling.portal.container.internal;
 
 import java.io.Serializable;
-import java.io.StringWriter;
-import java.io.Writer;
 import java.util.List;
 
 import javax.portlet.Event;
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBElement;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Marshaller;
 import javax.xml.namespace.QName;
-import javax.xml.stream.FactoryConfigurationError;
 
 import org.apache.pluto.container.EventProvider;
 import org.apache.pluto.container.PortletWindow;
 import org.apache.pluto.container.om.portlet.EventDefinition;
 import org.apache.pluto.container.om.portlet.EventDefinitionReference;
 import org.apache.pluto.container.om.portlet.PortletApplicationDefinition;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 public class EventProviderImpl implements EventProvider {
 
-    private final Logger LOGGER = 
LoggerFactory.getLogger(this.getClass().getName());
-
     private PortletWindow portletWindow;
 
     public EventProviderImpl(PortletWindow portletWindow) {
         this.portletWindow = portletWindow;
     }
 
-    @SuppressWarnings("unchecked")
-    public Event createEvent(QName qname, Serializable value) throws 
IllegalArgumentException
-    {
-        if (isDeclaredAsPublishingEvent(qname))
-        {
-            if (value != null && !isValueInstanceOfDefinedClass(qname, value))
-            {
+    /**
+     * @see 
org.apache.pluto.container.EventProvider#createEvent(javax.xml.namespace.QName, 
java.io.Serializable)
+     */
+    public Event createEvent(QName qname, Serializable value) throws 
IllegalArgumentException {
+        if (isDeclaredAsPublishingEvent(qname)) {
+            if (value != null && !isValueInstanceOfDefinedClass(qname, value)) 
{
                 throw new IllegalArgumentException("Payload has not the right 
class");
             }
-            try
-            {
-                if (value == null)
-                {
-                    return new EventImpl(qname, value);
-                }
-                ClassLoader cl = 
Thread.currentThread().getContextClassLoader();
-                Writer out = new StringWriter();
-                Class clazz = value.getClass();
-                try
-                {
-                    
Thread.currentThread().setContextClassLoader(this.getClass().getClassLoader());
-                    JAXBContext jc = JAXBContext.newInstance(clazz);
-                    Marshaller marshaller = jc.createMarshaller();
-                    JAXBElement<Serializable> element = new 
JAXBElement<Serializable>(qname, clazz, value);
-                    marshaller.marshal(element, out);
-                }
-                finally
-                {
-                    Thread.currentThread().setContextClassLoader(cl);
-                }
-                return new EventImpl(qname, out.toString());
-            }
-            catch (JAXBException e)
-            {
-                // maybe there is no valid jaxb binding
-                // TODO wsrp:eventHandlingFailed
-                LOGGER.error("Event handling failed", e);
-            }
-            catch (FactoryConfigurationError e)
-            {
-                LOGGER.warn("Configuration error.", e);
-            }
+            return new EventImpl(qname, value);
         }
         return null;
     }
 
-    private boolean isDeclaredAsPublishingEvent(QName qname)
-    {
+    private boolean isDeclaredAsPublishingEvent(QName qname) {
         final List<? extends EventDefinitionReference> events = 
portletWindow.getPortletDefinition().getSupportedPublishingEvents();
         if (events != null)
         {
@@ -116,8 +71,7 @@
         return false;
     }
 
-    private boolean isValueInstanceOfDefinedClass(QName qname, Serializable 
value)
-    {
+    private boolean isValueInstanceOfDefinedClass(QName qname, Serializable 
value) {
         PortletApplicationDefinition app = 
portletWindow.getPortletDefinition().getApplication();
         List<? extends EventDefinition> events = app.getEventDefinitions();
         if (events != null)

Modified: 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/request/LinkTransformerFactory.java
URL: 
http://svn.apache.org/viewvc/incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/request/LinkTransformerFactory.java?rev=782554&r1=782553&r2=782554&view=diff
==============================================================================
--- 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/request/LinkTransformerFactory.java
 (original)
+++ 
incubator/sling/whiteboard/portal/container/src/main/java/org/apache/sling/portal/container/internal/request/LinkTransformerFactory.java
 Mon Jun  8 08:06:07 2009
@@ -27,8 +27,8 @@
 import org.apache.sling.portal.container.internal.impl.DefaultPortalURLFactory;
 import org.apache.sling.rewriter.ProcessingComponentConfiguration;
 import org.apache.sling.rewriter.ProcessingContext;
-import org.apache.sling.rewriter.RewriterTransformerFactory;
 import org.apache.sling.rewriter.Transformer;
+import org.apache.sling.rewriter.TransformerFactory;
 import org.xml.sax.Attributes;
 import org.xml.sax.ContentHandler;
 import org.xml.sax.SAXException;
@@ -40,14 +40,15 @@
  * In addition it splits up an action url into the path and
  * hidden parameters.
  *
- * @scr.component
+ * @scr.component metatype="no"
  * @scr.service
+ * @scr.property name="pipeline.mode" value="global"
  * @scr.property name="service.ranking" value="999"
  */
-public class LinkTransformerFactory implements RewriterTransformerFactory {
+public class LinkTransformerFactory implements TransformerFactory {
 
     /**
-     * @see 
org.apache.sling.rewriter.RewriterTransformerFactory#createTransformer()
+     * @see org.apache.sling.rewriter.TransformerFactory#createTransformer()
      */
     public Transformer createTransformer() {
         return new LinkTransformer();


Reply via email to