[ 
https://issues.apache.org/jira/browse/PLUTO-371?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Torsten Dettborn updated PLUTO-371:
-----------------------------------

    Attachment: Filter_API_r15_050607.patch

For the filter part

The filter implementation starts with the FilterManagerImpl. There are all 
application stored. The initialization(addFilterApp) is called from the 
SupportedModesService. The position of the call have to be changed after 
merging the sources with the trunk. The method AddFilterApp themselves invokes 
addFilter from FilterChain. Inside FilterChain is a PortletFilter class where 
the class, filterConfig and some other parameter are stored, which you need for 
init and doFilter. To invoke processFilter in the PortletServlet:

request.setAttribute("filter-manager",
               container.getRequiredContainerServices().
               getPortalCallbackService().
               getFilterManager());

add to the PortalDriverServlet in the doGet method. 
ProcessFilter(FilterManager) iterate over the applications and calls the 
doFilter method from the FilterChain. The doFilter method themselves iterate 
over all for the portlet registered filters.

classes been involved:

org.apache.pluto.driver.services.container.FilterChainImpl 
org.apache.pluto.driver.services.container.FilterConfigImpl 
org.apache.pluto.driver.services.container.FilterManagerImpl 
org.apache.pluto.driver.services.impl.resource.SupportedModesServiceImpl 
org.apache.pluto.driver.services.container.PortalCallbackServiceImpl 
org.apache.pluto.driver.services.container.SupportedModesServiceImpl

org.apache.pluto.driver.PortalDriverServlet

org.apache.pluto.spi.FilterManager 

========================================================

For the API revision15 part

ActionRequest:

Add annotation

Generic Portlets:

Several changes for the annotation.

Event/EventImpl:

+QName getQNames
+String getName
-QName getName

PortletConfig:

+ public java.lang.String getDefaultEventNamespace();

PortletException:

+ private static final long serialVersionUID = 1L;

PortletModeException:

private static final long serialVersionUID = 1L;

- PortletModeResourceServing

PortletRequest:

-public static final String RESOURCE_SERVING_PHASE = "RESOURCE_SERVING_PHASE";
+  public static final String RESOURCE_PHASE = "RESOURCE_PHASE";
-  public static final String FRAGMENT_SERVING_PHASE = "FRAGMENT_SERVING_PHASE";

PortletRequestDispatcher:

There is only one method for indlude/forwared(PortletRequest req, 
PortletResponse res)

PortletSecurityException:

+  private static final long serialVersionUID = 1L;

PortletSession:

+ getMap()
+ getMap(int i)

ProcessAction:

Complete new

ProcessEvent:

Show in Event, there are the same changes.(qname ->local name)

ReadOnlyException:

+ serialVersionUID

RenderMode:

Complete new.

StateAwareResponse:

public void setDefaultNamspacedEvents(Map<String, Object> events)

public void setEvent(String name, Object value)

UnavailableException:

+    private static final long serialVersionUID = 1L;

ValidatorException:

+  private static final long serialVersionUID = 1L;


WindowStateException:

+    private static final long serialVersionUID = 1L;


Missing in GenericPortlet
public String getDefaultEventNamespace() {
        // TODO Auto-generated method stub
        return null;
}       


> Portlet Filter
> --------------
>
>                 Key: PLUTO-371
>                 URL: https://issues.apache.org/jira/browse/PLUTO-371
>             Project: Pluto
>          Issue Type: New Feature
>    Affects Versions: 1.1-286-COMPATIBILITY
>            Reporter: Torsten Dettborn
>             Fix For: 1.1-286-COMPATIBILITY
>
>         Attachments: Filter_API_r15_050607.patch, mylar-context.zip
>
>
> Portlet filters are components to transform the request or response from a 
> portlet. You have filter lifecycle for action-, event-,render- and 
> resourceRequest/Response. The configurations is defined in the deployment 
> descriptor. There is only one filter instance for each filter in the portlet 
> application. For more details see the Portlet Specification Version 2.0 early 
> draft 2 rev. 14.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to