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 ms...@apache.org on 2015/01/27 17:26:41 UTC

[03/12] portals-pluto git commit: Modified name of portlet API module & moved artifact version to 3.0-snapshot in preparation for further prototyping

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSession.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSession.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSession.java
deleted file mode 100644
index 1b6e088..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSession.java
+++ /dev/null
@@ -1,417 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-import java.util.Map;
-
-
-
-/**
- * The <CODE>PortletSession</CODE> interface provides a way to identify a user
- * across more than one request and to store transient information about that user.
- * <p>
- * A <code>PortletSession</code> is created per user client per portlet application.
- * <p>
- * A portlet can bind an object attribute into a <code>PortletSession</code> by name.
- * The <code>PortletSession</code> interface defines two scopes for storing objects:
- * <ul>
- * <li><code>APPLICATION_SCOPE</code>
- * <li><code>PORTLET_SCOPE</code>
- * </ul>
- * All objects stored in the session using the <code>APPLICATION_SCOPE</code> 
- * must be available to all the portlets, servlets and 
- * JSPs that belongs to the same portlet application and that handles a 
- * request identified as being a part of the same session.
- * Objects stored in the session using the <code>PORTLET_SCOPE</code> must be
- * available to the portlet during requests for the same portlet window
- * that the objects where stored from. Attributes stored in the
- * <code>PORTLET_SCOPE</code> are not protected from other web components
- * of the portlet application. They are just conveniently namespaced.
- * <P>
- * The portlet session is based on the <code>HttpSession</code>. Therefore all
- * <code>HttpSession</code> listeners do apply to the portlet session and
- * attributes set in the portlet session are visible in the <code>HttpSession</code>
- * and vice versa.
- */
-public interface PortletSession
-{
-
-  /**
-   * This constant defines an application wide scope for the session attribute.
-   * <code>APPLICATION_SCOPE</code> session attributes enable Portlets 
-   * within one portlet application to share data.
-   * <p>
-   * Portlets may need to prefix attributes set in this scope with some
-   * ID, to avoid overwriting each other's attributes in the
-   * case where two portlets of the same portlet definition
-   * are created.
-   * <p>
-   * Value: <code>0x01</code>
-   */
-  public static final int APPLICATION_SCOPE = 0x01;
-
-  /**
-   * This constant defines the scope of the session attribute to be
-   * private to the portlet and its included resources. 
-   * <p>
-   * Value: <code>0x02</code>
-   */
-  public static final int PORTLET_SCOPE = 0x02;
-
-
-
-  /**
-   * Returns the object bound with the specified name in this session
-   * under the <code>PORTLET_SCOPE</code>, or <code>null</code> if no 
-   * object is bound under the name in that scope.
-   *
-   * @param name		a string specifying the name of the object
-   *
-   * @return			the object with the specified name for
-   *                            the <code>PORTLET_SCOPE</code>.
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on an
-   *					invalidated session.
-   * @exception  java.lang.IllegalArgumentException 
-   *                            if name is <code>null</code>.
-   */
-
-  public java.lang.Object getAttribute(java.lang.String name);
-
-  
-  /**
-   * Returns the object bound with the specified name in this session, 
-   * or <code>null</code> if no object is bound under the name in the given scope.
-   *
-   * @param name		a string specifying the name of the object
-   * @param scope               session scope of this attribute
-   *
-   * @return			the object with the specified name
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on an
-   *					invalidated session, or the scope is unknown to the container.
-   * @exception  java.lang.IllegalArgumentException 
-   *                            if name is <code>null</code>.
-   */
-
-  public java.lang.Object getAttribute(java.lang.String name,int scope);
-
-
-  /**
-   * Returns an <code>Enumeration</code> of String objects containing the names of 
-   * all the objects bound to this session under the <code>PORTLET_SCOPE</code>, or an
-   * empty <code>Enumeration</code> if no attributes are available.
-   *
-   * @return			an <code>Enumeration</code> of 
-   *				<code>String</code> objects specifying the
-   *				names of all the objects bound to
-   *				this session, or an empty <code>Enumeration</code> 
-   *                if no attributes are available.
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on an
-   *					invalidated session   
-   */
-  
-  public java.util.Enumeration<String> getAttributeNames();
-
-
-  /**
-   * Returns an <code>Enumeration</code> of String objects containing the names of 
-   * all the objects bound to this session in the given scope, or an
-   * empty <code>Enumeration</code> if no attributes are available in the
-   * given scope.
-   *
-   * @param scope               session scope of the attribute names
-   *
-   * @return			an <code>Enumeration</code> of 
-   *				<code>String</code> objects specifying the
-   *				names of all the objects bound to
-   *				this session, or an empty <code>Enumeration</code> 
-   *                            if no attributes are available in the given scope.
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on an
-   *					invalidated session, or the scope is unknown to the container.      
-   */
-  
-  public java.util.Enumeration<String> getAttributeNames(int scope);
-
-  /**
-   * Returns the time when this session was created, measured in 
-   * milliseconds since midnight January 1, 1970 GMT.  
-   *
-   * @return				a <code>long</code> specifying
-   * 					when this session was created,
-   *					expressed in 
-   *					milliseconds since 1/1/1970 GMT
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on an
-   *					invalidated session
-   */
-
-  public long getCreationTime();
-  
-
-  /**
-   * Returns a string containing the unique identifier assigned to this session. 
-   *
-   * @return				a string specifying the identifier
-   *					assigned to this session
-   */
-  
-  public java.lang.String getId();
-  
-
-  /**
-   * Returns the last time the client sent a request associated with this session, 
-   * as the number of milliseconds since midnight January 1, 1970 GMT.  
-   *
-   * <p>Actions that your portlet takes, such as getting or setting
-   * a value associated with the session, do not affect the access
-   * time.
-   *
-   * @return				a <code>long</code>
-   *					representing the last time 
-   *					the client sent a request associated
-   *					with this session, expressed in 
-   *					milliseconds since 1/1/1970 GMT
-   */
-  
-  public long getLastAccessedTime();
-
-
-  /**
-   * Returns the maximum time interval, in seconds, for which the portlet container 
-   * keeps this session open between client accesses. After this interval, 
-   * the portlet container invalidates the session.  The maximum time 
-   * interval can be set
-   * with the <code>setMaxInactiveInterval</code> method.
-   * A negative time indicates the session should never timeout.
-   *
-   * @return		an integer specifying the number of
-   *			seconds this session remains open
-   *			between client requests
-   *
-   * @see		#setMaxInactiveInterval
-   */
-
-  public int getMaxInactiveInterval();
-
-
-  /**
-   * Invalidates this session (all scopes) and unbinds any objects bound to it.  
-   * <p>
-   * Invalidating the portlet session will result in invalidating the underlying
-   * <code>HttpSession</code>
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on a
-   *					session which has already been invalidated
-   */
-
-  public void invalidate();
-
-
-
-  /**
-   * Returns true if the client does not yet know about the session or 
-   * if the client chooses not to join the session. 
-   *
-   * @return 				<code>true</code> if the 
-   *					server has created a session, 
-   *					but the client has not joined yet.
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on a
-   *					session which has already been invalidated
-   *
-   */
-
-  public boolean isNew();
-  
-
-  /**
-   * Removes the object bound with the specified name under
-   * the <code>PORTLET_SCOPE</code> from
-   * this session. If the session does not have an object
-   * bound with the specified name, this method does nothing.
-   * 
-   * @param name   the name of the object to be
-   *               removed from this session in the 
-   *               <code> PORTLET_SCOPE</code>.
-   *
-   * @exception java.lang.IllegalStateException
-   *                   if this method is called on a
-   *                   session which has been invalidated
-   * @exception  java.lang.IllegalArgumentException 
-   *                            if name is <code>null</code>.
-   */
-  
-  public void removeAttribute(String name) ;
-
-
-  /**
-   * Removes the object bound with the specified name and the given scope from
-   * this session. If the session does not have an object
-   * bound with the specified name, this method does nothing.
-   * 
-   * @param name   the name of the object to be
-   *               removed from this session
-   * @param scope  session scope of this attribute
-   *
-   * @exception java.lang.IllegalStateException
-   *                   if this method is called on a
-   *                   session which has been invalidated
-   * @exception  java.lang.IllegalArgumentException 
-   *                            if name is <code>null</code>.
-   */
-  
-  public void removeAttribute(String name, int scope) ;
-
-
-  /**
-   * Binds an object to this session under the <code>PORTLET_SCOPE</code>, using the name specified.  
-   * If an object of the same name in this scope is already bound to the session,
-   * that object is replaced.
-   *
-   * <p>After this method has been executed, and if the new object
-   * implements <code>HttpSessionBindingListener</code>,
-   * the container calls 
-   * <code>HttpSessionBindingListener.valueBound</code>. The container then   
-   * notifies any <code>HttpSessionAttributeListeners</code> in the web 
-   * application.
-   * <p>If an object was already bound to this session 
-   * that implements <code>HttpSessionBindingListener</code>, its 
-   * <code>HttpSessionBindingListener.valueUnbound</code> method is called.
-   *
-   * <p>If the value is <code>null</code>, this has the same effect as calling 
-   * <code>removeAttribute()</code>.
-   *
-   *
-   * @param name		the name to which the object is bound under
-   *                            the <code>PORTLET_SCOPE</code>;
-   *				this cannot be <code>null</code>.
-   * @param value		the object to be bound
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on a
-   *					session which has been invalidated
-   * @exception  java.lang.IllegalArgumentException 
-   *                            if name is <code>null</code>.
-   */
-  
-  public void setAttribute(java.lang.String name, java.lang.Object value);
-
-
-  /**
-   * Binds an object to this session in the given scope, using the name specified.  
-   * If an object of the same name in this scope is already bound to the session,
-   * that object is replaced.
-   *
-   * <p>After this method has been executed, and if the new object
-   * implements <code>HttpSessionBindingListener</code>,
-   * the container calls 
-   * <code>HttpSessionBindingListener.valueBound</code>. The container then   
-   * notifies any <code>HttpSessionAttributeListeners</code> in the web 
-   * application.
-   * <p>If an object was already bound to this session 
-   * that implements <code>HttpSessionBindingListener</code>, its 
-   * <code>HttpSessionBindingListener.valueUnbound</code> method is called.
-   *
-   * <p>If the value is <code>null</code>, this has the same effect as calling 
-   * <code>removeAttribute()</code>.
-   *
-   *
-   * @param name		the name to which the object is bound;
-   *				this cannot be <code>null</code>.
-   * @param value		the object to be bound
-   * @param scope               session scope of this attribute
-   *
-   * @exception java.lang.IllegalStateException	if this method is called on a
-   *					session which has been invalidated
-   * @exception  java.lang.IllegalArgumentException 
-   *                            if name is <code>null</code> or scope is unknown to the container.
-   */
-  
-  public void setAttribute(java.lang.String name, java.lang.Object value, int scope);
-
-
-  /**
-   * Specifies the time, in seconds, between client requests, before the 
-   * portlet container invalidates this session. A negative time
-   * indicates the session should never timeout.
-   *
-   * @param interval		An integer specifying the number
-   * 				of seconds 
-   */
-
-  public void setMaxInactiveInterval(int interval);
-
-
-  /**
-   * Returns the portlet application context associated with this session.
-   *
-   * @return   the portlet application context
-   */
-
-  public PortletContext getPortletContext ();
-
-  /** 
-   * Returns a <code>Map</code> of the session attributes in
-   * the portlet session scope.
-   * <p>
-   * The keys are of type <code>String</code> and the values in the 
-   * returned <code>Map</code> are from type <code>Object</code>.
-   * <p>
-   * If no session attributes exist this method returns an empty <code>Map</code>.
-   *
-   * @return     an immutable <code>Map</code> containing the session attributes in the  
-   *             portlet session scope as keys and attribute values as map values, or an empty <code>Map</code>
-   *             if no session attributes exist. The keys in the
-   *             map are of type String, the values of type
-   *             Object.
-   *  @since 2.0
-   */
-  public Map<String, Object> getAttributeMap();  
-
-  /** 
-   * Returns a <code>Map</code> of the session attributes in
-   * the given session scope.
-   * <p>
-   * The keys are of type <code>String</code> and the values in the 
-   * returned <code>Map</code> are from type <code>Object</code>.
-   * <p>
-   * If no session attributes exist this method returns an empty <code>Map</code>.
-   *
-   * @param scope               session scope of this attribute
-   * 
-   * @return     an immutable <code>Map</code> containing the session attributes in the  
-   *             given scope as keys and attribute values as map values, or an empty <code>Map</code>
-   *             if no session attributes exist. The keys in the
-   *             map are of type String, the values of type
-   *             Object.
-   *  @since 2.0
-   */
-  public Map<String, Object> getAttributeMap(int scope);  
-
-}
-
-

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSessionUtil.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSessionUtil.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSessionUtil.java
deleted file mode 100644
index bfd5312..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletSessionUtil.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <CODE>PortletSessionUtil</CODE>  class helps identify and decode
- * attributes in the <CODE>PORTLET_SCOPE</CODE> scope of the PortletSession
- * when accessed through the HttpSession an from within calls to methods
- * of the HttpSessionBindingListener interface.
- */
-public class PortletSessionUtil
-{
-
-  private static final String PORTLET_SCOPE_NAMESPACE = "javax.portlet.p.";
-  
-  /**
-   * Returns the attribute name of an attribute in the 
-   * <code>PORTLET_SCOPE</code>. If the attribute is in the
-   * <code>APPLICATION_SCOPE</code> it returns the attribute name unchanged.
-   *
-   * @param name		a string specifying the name of the
-   *                            encoded portlet attribute
-   *
-   * @return			the decoded attribute name
-   */
-
-  public static java.lang.String decodeAttributeName(java.lang.String name)
-  {
-    if (name.startsWith(PORTLET_SCOPE_NAMESPACE)) {
-      int index = name.indexOf('?');
-      if (index>-1) {
-	name = name.substring(index+1);
-      }
-    }
-    return name;
-  }
-
-
-  /**
-   * Returns the portlet attribute scope from an encoded portlet
-   * attribute.
-   * <br>Possible return values are:
-   * <ul>
-   * <li><code>PortletSession.APPLICATION_SCOPE</code></li>
-   * <li><code>PortletSession.PORTLET_SCOPE</code></li>
-   * </ul>
-   *
-   * @param name		a string specifying the name of the
-   *                            encoded portlet attribute
-   *
-   * @return			the decoded attribute scope
-   * @see PortletSession
-   */
-
-  public static int decodeScope(java.lang.String name)
-  {
-    int scope = PortletSession.APPLICATION_SCOPE; // APP
-    if (name.startsWith(PORTLET_SCOPE_NAMESPACE)) {
-      int index = name.indexOf('?');
-      if (index>-1) {
-	scope = PortletSession.PORTLET_SCOPE; // PORTLET
-      }
-    }
-    return scope;
-  }
-}
-
-

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURL.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURL.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURL.java
deleted file mode 100644
index 2382f66..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURL.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-
-
-/**
- * The <CODE>PortletURL</CODE> interface represents a URL
- * that reference the portlet itself.
- * <p>
- * A PortletURL is created through the <CODE>RenderResponse</CODE>
- * or <code>ResourceResponse</code>.
- * Parameters, a portlet mode, a window state and a security level
- * can be added to <CODE>PortletURL</CODE> objects. 
- * <P>
- * There are two types of PortletURLs:
- * <ul>
- * <li>Action URLs, they are created with <CODE>createActionURL</CODE>, and 
- *     trigger an action request followed by a render request.
- * <li>Render URLs, they are created with <CODE>createRenderURL</CODE>, and
- *     trigger a render request.
- * </ul>
- * <p>
- * The string representation of a PortletURL does not need to be a valid 
- * URL at the time the portlet is generating its content. It may contain  
- * special tokens that will be converted to a valid URL, by the portal, 
- * before the content is returned to the client.
- */
-public interface PortletURL extends BaseURL
-{
-
-
-
-  /**
-   * Indicates the window state the portlet should be in, if this 
-   * portlet URL triggers a request.
-   * <p>
-   * A URL can not have more than one window state attached to it.
-   * If more than one window state is set only the last one set
-   * is attached to the URL.
-   * 
-   * @param windowState
-   *               the portlet window state
-   *
-   * @exception WindowStateException
-   *                   if the portlet cannot switch to this state,
-   *                   because the portal does not support this state, the portlet has not 
-   *                   declared in its deployment descriptor that it supports this state, or the current
-   *                   user is not allowed to switch to this state.
-   *                   The <code>PortletRequest.isWindowStateAllowed()</code> method can be used
-   *                   to check if the portlet can set a given window state.
-   * @see PortletRequest#isWindowStateAllowed
-   */
-  public void setWindowState (WindowState windowState)
-    throws WindowStateException;
-
-
-  /**
-   * Indicates the portlet mode the portlet must be in, if this
-   * portlet URL triggers a request.
-   * <p>
-   * A URL can not have more than one portlet mode attached to it.
-   * If more than one portlet mode is set only the last one set
-   * is attached to the URL.
-   * 
-   * @param portletMode
-   *               the portlet mode
-   * 
-   * @exception PortletModeException
-   *                   if the portlet cannot switch to this mode,
-   *                   because the portal does not support this mode, the portlet has not
-   *                   declared in its deployment descriptor that it supports this mode for the current markup,
-   *                   or the current user is not allowed to switch to this mode.
-   *                   The <code>PortletRequest.isPortletModeAllowed()</code> method can be used
-   *                   to check if the portlet can set a given portlet mode.
-   * @see PortletRequest#isPortletModeAllowed
-   */
-  public void setPortletMode (PortletMode portletMode)
-    throws PortletModeException;
-
-
-  /**
-   * Returns the currently set portlet mode on this PortletURL.
-   *             
-   * @since 2.0
-   *
-   * @return   the portlet mode, or <code>null</code> if none is set
-   */
-
-  public PortletMode getPortletMode ();
-
-
-  /**
-   * Returns the currently set window state on this PortletURL.
-   *             
-   * @since 2.0
-   *
-   * @return   the window state, or <code>null</code> if none is set
-   */
-
-  public WindowState getWindowState ();
-
-  /**
-	* Removes the specified public render parameter.
-	* The name must reference a public render parameter defined
-	* in the portlet deployment descriptor under the
-	* <code>public-render-parameter</code> element with the
-	* <code>identifier</code> mapping to the parameter name.
-	* <p>
-	* Note that calling this method on a PortletURL of type
-	* Action URL does not have any effect.
-	* 
-	* @param name			a <code>String</code> specifying 
-	*					the name of the public render parameter to be removed
-	*
-	* @exception  java.lang.IllegalArgumentException 
-	*                            if name is <code>null</code>.
-	* @since 2.0
-	*/
-  public void removePublicRenderParameter(String name); 
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURLGenerationListener.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURLGenerationListener.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURLGenerationListener.java
deleted file mode 100644
index 146554b..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/PortletURLGenerationListener.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * Portlet applications can register portlet URL listeners in order to filter URLs 
- * before they get generated.
- * In order to receive a callback from the portlet container before a 
- * portlet URL is generated the portlet application needs to implement this 
- * interface and register it in the deployment descriptor with the
- * <code>listener</code> element.
- *
- * @since 2.0
- */
-public interface PortletURLGenerationListener {
-
-	/**
-	 * Callback being called by the portlet container
-	 * before <code>toString</code> or <code>write</code>
-	 * are executed on action URLs.
-	 * 
-	 * @param actionURL  action URL to be generated
-	 */
-	public void filterActionURL(PortletURL actionURL);
-
-	/**
-	 * Callback being called by the portlet container
-	 * before <code>toString</code> or <code>write</code>
-	 * are executed on render URLs.
-	 * 
-	 * @param renderURL  render URL to be generated
-	 */
-	public void filterRenderURL(PortletURL renderURL);
-	
-	/**
-	 * Callback being called by the portlet container
-	 * before <code>toString</code> or <code>write</code>
-	 * are executed on resource URLs.
-	 * 
-	 * @param resourceURL  resource URL to be generated
-	 */
-	public void filterResourceURL(ResourceURL resourceURL);
-	
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/PreferencesValidator.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/PreferencesValidator.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/PreferencesValidator.java
deleted file mode 100644
index 8d3e687..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/PreferencesValidator.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-
-/**
- * The <CODE>PreferencesValidator</CODE> allows to validate the set of
- * preferences of the associated portlet just before they are
- * stored in the persistent store.
- * <p>
- * The portlet container invokes the <code>validate</code> method as 
- * part of the invocation of the <code>store</code> method of the
- * <code>PortletPreferences</code>.
- */
-public interface PreferencesValidator
-{
-
-  /**
-   * If the preferences values are successfully validated the call to this method
-   * must finish gracefully. Otherwise it must throw a <code>ValidatorException</code>.
-   *
-   * @param  preferences   preferences to validate
-   *
-   * @throws  ValidatorException  if the given preferences contains invalid
-   *                              settings
-   *
-   */
-
-  public void validate(PortletPreferences preferences)
-    throws ValidatorException;  
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessAction.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessAction.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessAction.java
deleted file mode 100644
index e3c95d6..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessAction.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-/**
- * Annotation for marking a method for processing
- * a specific action.
- * The <code>GenericPortlet</code> tries to dispatch to methods annotated 
- * with the tag <code>@ProcessAction</code> for any received
- * <code>processAction</code> call.
- *
- * @since 2.0
- */
-@Target(ElementType.METHOD)
-@Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
-public @interface ProcessAction {
-	/**
-	 * Name of the action.
-	 * Must be set on the 
-	 * <code>ActionURL</code> as value of the 
-	 * parameter <code>javax.portlet.action</code>.
-	 * 
-	 * @return  action name
-	 */
-	String name();
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessEvent.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessEvent.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessEvent.java
deleted file mode 100644
index 4da524d..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/ProcessEvent.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-/**
- * Annotation for marking a method for handling
- * a specific event.
- * The <code>GenericPortlet</code> tries to dispatch to methods annotated 
- * with the tag <code>@ProcessEvent</code> for any received event.
- *
- * @since 2.0
- */
-@Target(ElementType.METHOD)
-@Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
-public @interface ProcessEvent {
-    /**
-     * Event QName.
-     * Must be in the format:<br> 
-     * "{" + Namespace URI + "}" + local part.<br> 
-     * If the Namespace URI equals(XMLConstants.NULL_NS_URI), 
-     * only the local part is used 
-     * (like the <code>javax.xml.namespace.QName.toString()</code> method).
-     * 
-     * @return event QName.
-     */
-    String qname() default "";
-    
-    /**
-     * Local part of the event name.
-     * The namespace for the events is either taken from the <code>default-event-namespace</code> element
-     * in the portlet deployment descriptor, or if this element is not provided
-     * the XML default namespace XMLConstants.NULL_NS_URI is used.
-     * 
-     * @return local part of the event name.
-     */
-    String name() default "";
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/ReadOnlyException.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/ReadOnlyException.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/ReadOnlyException.java
deleted file mode 100644
index 01c575a..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/ReadOnlyException.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <CODE>ReadOnlyException</CODE> is thrown when a portlet tries
- * to change the value for a read-only preference attribute.
- */
-
-public class ReadOnlyException extends PortletException
-{
-	  private static final long serialVersionUID = 1L;
-
-  private ReadOnlyException ()
-  {
-  }
-
-  /**
-   * Constructs a new read-only exception with the given text. The
-   * portlet container may use the text write it to a log.
-   *
-   * @param   text
-   *          the exception text
-   */
-
-  public ReadOnlyException (String text)
-  {
-    super (text);
-  }
-
-  /**
-   * Constructs a new read-only exception when the portlet needs to do
-   * the following:
-   * <ul>
-   * <il>throw an exception 
-   * <li>include a message about the "root cause" that interfered
-   *     with its normal operation
-   * <li>include a description message
-   * </ul>
-   *
-   * @param   text
-   *          the exception text
-   * @param   cause
-   *          the root cause
-   */
-  
-  public ReadOnlyException (String text, Throwable cause)
-  {
-    super(text, cause);
-  }
-
-  /**
-   * Constructs a new read-only exception when the portlet needs to throw an
-   * exception. The exception message is based on the localized message
-   * of the underlying exception.
-   *
-   * @param   cause
-   *          the root cause
-   */
-
-  public ReadOnlyException (Throwable cause)
-  {
-    super(cause);
-  }
-
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderMode.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderMode.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderMode.java
deleted file mode 100644
index 0704bb8..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderMode.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-/**
- * Annotation for marking a method for handling
- * a specific portlet mode in the render phase.
- * The <code>GenericPortlet</code> tries to dispatch to methods annotated 
- * with the tag <code>@RenderMode</code> for any received render call.
- *
- * @since 2.0
- */
-@Target(ElementType.METHOD)
-@Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
-public @interface RenderMode {
-	/**
-	 * Name of the render mode.
-	 * 
-	 * @return  render mode name
-	 */
-	String name();
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderRequest.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderRequest.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderRequest.java
deleted file mode 100644
index 29b328c..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderRequest.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-
-/**
- * The <CODE>RenderRequest</CODE> represents the request sent to the portlet
- * to handle a render.
- * It extends the PortletRequest interface to provide render request
- * information to portlets.<br>
- * The portlet container creates a <CODE>RenderRequest</CODE> object and
- * passes it as argument to the portlet's <CODE>render</CODE> method.
- * 
- * @see PortletRequest
- * @see ActionRequest
- */
-public interface RenderRequest extends PortletRequest
-{
-
-    /**
-     * This property is set by the container if the portlet container
-     * has a cached response for the given validation tag. The property can be
-     * retrieved using the <code>getProperty</code> method. 
-     * <P>
-     * The value is <code>"portlet.ETag "</code>.
-     * 
-     * @since 2.0
-     */
-    public static final String ETAG = "portlet.ETag";
-
-    
-    /**
-     * Returns the validation tag if the portlet container
-     * has a cached response for this validation tag, or
-     * <code>null</code> if no cached response exists.
-     * <p>
-     * This call returns the same value as 
-     * <code>RenderRequest.getProperty(RenderRequest.ETAG)</code>.
-     * 
-     * @return  the validation tag if the portlet container
-     *          has a cached response for this validation tag, or
-     *          <code>null</code> if no cached response exists.
-     *          
-     * @since 2.0
-     */
-    public String getETag();
-    
-
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderResponse.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderResponse.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderResponse.java
deleted file mode 100644
index fb2eccf..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/RenderResponse.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <CODE>RenderResponse</CODE> defines an object to assist a portlet in
- * sending a response to the portal. It extends the <CODE>MimeResponse</CODE>
- * interface to provide specific render response functionality to portlets.<br>
- * The portlet container creates a <CODE>RenderResponse</CODE> object and
- * passes it as argument to the portlet's <CODE>render</CODE> method.
- * 
- * @see RenderRequest
- * @see PortletResponse
- * @see MimeResponse
- */
-public interface RenderResponse extends MimeResponse {
-
-    /**
-     * This method sets the title of the portlet.
-     * <p>
-     * The value can be a text String
-     * 
-     * @param title
-     *            portlet title as text String or resource URI
-     */
-    public void setTitle(String title);
-   
-    
-	/**
-     * This method allows the portlet to tell the portal the next possible
-     * portlet modes that the make sense from the portlet point of view.
-     * <p>
-     * If set, the portal should honor these enumeration of portlet modes and
-     * only provide the end user with choices to the provided portlet modes or a
-     * subset of these modes based on access control considerations.
-     * <p>
-     * If the portlet does not set any next possible portlet modes the default
-     * is that all portlet modes that the portlet has defined supporting in the
-     * portlet deployment descriptor are meaningful new portlet modes.
-     * 
-     * @param portletModes
-     *            <code>Enumeration</code> of <code>PortletMode</code> objects with the
-     *            next possible portlet modes that the make sense from the
-     *            portlet point of view, must not be <code>null</code> or an
-     *            empty enumeration.
-     * @since 2.0
-     */
-	public void setNextPossiblePortletModes(java.util.Collection<PortletMode> portletModes);
-
-    /**
-     * Sets the MIME type for the render response. The portlet should set the
-     * content type before calling {@link #getWriter} or
-     * {@link #getPortletOutputStream}.
-     * <p>
-     * Calling <code>setContentType</code> after <code>getWriter</code> or
-     * <code>getOutputStream</code> does not change the content type.
-     * <p>
-     * The portlet container will ignore any character encoding
-     * specified as part of the content type for <code>render</code>
-     * calls.
-     * 
-     * @param type
-     *            the content MIME type
-     * 
-     * @throws java.lang.IllegalArgumentException
-     *             if the given type is not in the list 
-     *             returned by <code>PortletRequest.getResponseContentTypes</code>
-     * 
-     * @see PortletRequest#getResponseContentTypes
-     * @see #getContentType
-     */
-    public void setContentType(String type);
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceRequest.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceRequest.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceRequest.java
deleted file mode 100644
index f2b121d..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceRequest.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <code>ResourceRequest</code> interface represents the request
- * send to the portlet for rendering resources.
- * 
- * It extends the ClientDataRequest interface and provides resource request
- * information to portlets.
- * <p>
- * The portlet container creates an <CODE>ResourceRequest</CODE> object and
- * passes it as argument to the portlet's <CODE>serveResource</CODE> method.
- * <p>
- * The <code>ResourceRequest</code> is provided with the current portlet mode, window state, 
- * and render parameters that the portlet can access via the 
- * <code>PortletResourceRequest</code> with <code>getPortletMode</code> and, 
- * <code>getWindowState</code>, or one of the <code>getParameter</code> methods.   
- * ResourceURLs cannot change the current portlet mode, window state or 
- * render parameters. Parameters set on a resource URL are not render parameters 
- * but parameters for serving this resource and will last only for only 
- * this the current serveResource request.<br>
- * If a parameter is set that has the same name as a render parameter that this 
- * resource URL contains, the render parameter must be the last entry in the 
- * parameter value array. 
- * 
- * @see ClientDataRequest
- * @see ResourceServingPortlet
- * @since 2.0
- */
-public interface ResourceRequest extends ClientDataRequest {
-
-    /**
-     * This property is set by the container if the container
-     * has a cached response for the given validation tag. The property can be
-     * retrieved using the <code>getProperty</code> method. 
-     * <P>
-     * The value is <code>"portlet.ETag "</code>.
-     */
-    public static final String ETAG = "portlet.ETag";
-
-    /**
-     * Returns the validation tag if the portlet container
-     * has a cached response for this validation tag, or
-     * <code>null</code> if no cached response exists.
-     * <p>
-     * This call returns the same value as 
-     * <code>ResourceRequest.getProperty(ResourceRequest.ETAG)</code>.
-     * 
-     * @return  the validation tag if the portlet container
-     *          has a cached response for this validation tag, or
-     *          <code>null</code> if no cached response exists.
-     */
-    public String getETag();
-    
-    /**
-     * Returns the resource ID set on the ResourceURL or <code>null</code>
-     * if no resource ID was set on the URL.
-     * 
-     * @return  the resource ID set on the ResourceURL,or <code>null</code>
-     *          if no resource ID was set on the URL. 
-     */
-    public String getResourceID();
-    
-    /**
-     * Returns a <code>String</code> representing the current page state.
-     * 
-     * The content of the returned value is unspecified. It is to be passed to the
-     * Portlet Hub in order to conclude a Partial Action processing sequence. 
-     * <code>null</code> is a valid return value.
-     * 
-     * This call is only valid during Partial Action processing. If called at other times,
-     * the returned value is unspecified.
-     * 
-     * @return String to be passed to the Portlet Hub to conclude a Partial Action
-     *         processing sequence.
-     */
-    public String getPageState();
- 
-    /**
-     * Returns a <code>Map</code> of the private render parameters of this request.
-     * Private parameters are not shared with other portlets or components.  
-     * The returned parameters are "x-www-form-urlencoded" decoded.
-     * <p>
-     * The parameters returned do not include the resource parameters that
-     * the portlet may have set on the resource URL triggering this
-     * <code>serveResource</code> call.
-     * <p>
-     * The values in the returned <code>Map</code> are from type
-     * String array (<code>String[]</code>).
-     * <p>
-     * If no private parameters exist this method returns an empty <code>Map</code>.
-     *
-     * @return     an immutable <code>Map</code> containing private parameter names as 
-     *             keys and private parameter values as map values, or an empty <code>Map</code>
-     *             if no private parameters exist. The keys in the parameter
-     *             map are of type String. The values in the parameter map are of type
-     *             String array (<code>String[]</code>).
-     */
-    public java.util.Map<String, String[]> getPrivateRenderParameterMap();
-    
-    /**
-     * Returns the portal preferred content type for the response.
-     * <p>
-     * The returned content type should be based on the HTTP Accept header 
-     * provided by the client.
-     * 
-     * @return preferred content type of the response
-     */
-
-    public String getResponseContentType();
-
-
-    /**
-     * Gets a list of content types which the portal accepts for the response.
-     * This list is ordered with the most preferable types listed first.
-     * <p>
-     * The returned content types should be based on the HTTP Accept header 
-     * provided by the client.
-     *
-     * @return ordered list of content types for the response
-     */
-
-    public java.util.Enumeration<String> getResponseContentTypes();
-
-	/**
-	 * Returns the cache level of this resource request.
-	 * <p>
-	 * Possible return values are: 
-	 * <code>ResourceURL.FULL, ResourceURL.PORTLET</code> 
-	 * or <code>ResourceURL.PAGE</code>.
-	 * 
-     * @return  the cache level of this resource request.
-     */
-	public String getCacheability();
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceResponse.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceResponse.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceResponse.java
deleted file mode 100644
index 809e0b1..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceResponse.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <CODE>ResourceResponse</CODE> defines an object to assist a portlet 
- * for rendering a resource.
- * <p>
- * The difference between the <CODE>RenderResponse</CODE> is that for the 
- * <CODE>ResourceResponse</CODE> the output of this response is delivered
- * directly to the client without any additional markup added by the portal.
- * It is therefore allowed for the portlet to return binary content in this
- * response.
- * <p>
- * A portlet can set HTTP headers for the response via the setProperty or 
- * addProperty call in the <CODE>ResourceResponse</CODE>. 
- * To be successfully transmitted back to the client, headers must be set 
- * before the response is committed. Headers set after the response is 
- * committed will be ignored by the portlet container.
- * <p>
- * The portlet container creates a <CODE>ResourceResponse</CODE> object and 
- * passes it as argument to the portlet's <CODE>serveResource</CODE> method.
- * 
- * @see ResourceServingPortlet
- * @see MimeResponse
- * @since 2.0
- */
-public interface ResourceResponse extends MimeResponse {
-    
-	/**
-	 * Constant for setting the HTTP status code via the 
-	 * <code>setProperty</code> method.
-	 */
-	public static final String HTTP_STATUS_CODE = "portlet.http-status-code";
-
-    /**
-     * Sets the locale of the response, setting the headers 
-     * (including the Content-Type's charset) as appropriate. 
-     * This method should be called before a call to getWriter(). 
-     * By default, the response locale is the default locale provided
-     * by the portlet container.
-     * 
-     * @param loc  the new locale of the response
-     */
-    public void setLocale(java.util.Locale loc);
-    
-    
-    /**
-     * Sets the character encoding (MIME charset) of the response being 
-     * sent to the client, for example, to UTF-8. If the character encoding 
-     * has already been set by either the portlet container,
-     * <code>setContentType(java.lang.String)</code> or 
-     * <code>setLocale(java.util.Locale)</code>, this method overrides it. Calling 
-     * <code>setContentType(java.lang.String)</code> with the String  of 
-     * <code>text/html</code> and calling this method with the String of 
-     * <code>UTF-8</code> is equivalent with calling <code>setContentType</code> 
-     * with the String of <code>text/html; charset=UTF-8</code>.
-     * <p>
-     * This method can be called repeatedly to change the character encoding. 
-     * This method has no effect if it is called after getWriter has been called 
-     * or after the response has been committed.
-     * 
-     * @param charset a String specifying only the character set defined by 
-     *                IANA Character Sets (http://www.iana.org/assignments/character-sets)
-     */
-    public void setCharacterEncoding(java.lang.String charset);
-    
-    
-    /**
-     * Sets the length of the content body in the response.
-     * 
-     * @param len an integer specifying the length of the content being returned
-     */
-    public void setContentLength(int len);
-    
-    
-	/**
-     * @throws java.lang.IllegalStateException
-     *             if the cacheability level of the resource URL
-     *             triggering this <code>serveResource</code> call
-     *             is not <code>PAGE</code> and thus does not allow
-     *             for creating render URLs.
-     */
-	public PortletURL createRenderURL();
-
-	/**
-     * @throws java.lang.IllegalStateException
-     *             if the cacheability level of the resource URL
-     *             triggering this <code>serveResource</code> call
-     *             is not <code>PAGE</code> and thus does not allow
-     *             for creating action URLs.
-     */
-	public PortletURL createActionURL();
-
-	/**
-     * @throws java.lang.IllegalStateException
-     *             if the cacheability level of the resource URL
-     *             triggering this <code>serveResource</code> call,
-     *             or one of the parent calls, have defined a stricter
-     *             cachability level.
-     */
-	public ResourceURL createResourceURL();
-
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceServingPortlet.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceServingPortlet.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceServingPortlet.java
deleted file mode 100644
index a495cba..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceServingPortlet.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <code>ResourceServingPortlet</code> interface allows
- * serving resources through the portlet.
- * <p>
- * The portlet container must call this method for links created by
- * the <code>RenderResponse.createResourceURL()</code> call.
- * If the portlet creates resource URLs with <code>RenderResponse.createResourceURL()</code> 
- * it must implement this lifecycle method.
- * 
- * @since 2.0
- */
-public interface ResourceServingPortlet {
-
-    /**
-     * Called by the portlet container to allow the portlet to generate
-     * the resource content based on its current state.
-     * The portal / portlet container must not render any output in addition 
-     * to the content returned by the portlet. The portal / portlet container 
-     * should expect that the portlet may return binary content for a 
-     * <code>renderResource</code> call.
-     *
-     * @param   request
-     *          the resource request
-     * @param   response
-     *          the resource response
-     *
-     * @exception   PortletException
-     *              if the portlet has problems fulfilling the
-     *              rendering request
-     * @exception  UnavailableException     
-     *                   if the portlet is unavailable to perform render at this time
-     * @exception  PortletSecurityException  
-     *                   if the portlet cannot fullfill this request because of security reasons
-     * @exception  java.io.IOException
-     *              if the streaming causes an I/O problem
-     */
-
-
-    public void serveResource(ResourceRequest request, ResourceResponse response)
-        throws PortletException, java.io.IOException;
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceURL.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceURL.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceURL.java
deleted file mode 100644
index f249a81..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/ResourceURL.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <CODE>ResourceURL</CODE> defines a resource URL that when clicked will
- * result in a <code>serveResource</code> call of the
- * <code>ResourceServingPortlet</code> interface.
- * <p>
- * Each resource URL has a specific cache level assigned with it. This level
- * can be either <code>FULL, PORTLET</code> or <code>PAGE</code> and denotes
- * the cacheability of the resource in the browser.
- * <p>
- * The default cache level of a resource URL is either the cache level of the
- * parent resource URL, or <code>PAGE</code> if no parent resource URL is
- * available.
- *   
- * @since 2.0
- */
-public interface ResourceURL extends BaseURL {
-
-	/**
-     * The URL of type <code>FULL</code> does not need to contain the current
-     * state of the page or the current render parameters, portlet mode, or
-     * window state of the portlet. Thus the portlet may not be able to
-     * access the portlet mode, window state, or render parameters in the
-     * <code>serveResource</code> call. 
-     * <p>
-     * Only URLs of the type <code>FULL</code> are allowed in the response.
-     * The same restriction is true for all downstream URLs that result from
-     * this response call. Attempts to create URLs that are not of type
-     * <code>FULL</code> will result in an <code>IllegalStateException</code>.
-     * <p>
-     * URLs of the type <code>FULL</code> have the highest cacheability in the
-     * browser as they do not depend on any state of the portlet or page.
-     */
-	public static final String FULL = "cacheLevelFull";
-
-	/**
-     * The URL of type <code>PORTLRET</code> does not need to contain the
-     * current state of the page, but the current render parameters, portlet
-     * mode, or window state of the portlet must be accessible to the portlet.
-     * <p>
-     * Only URLs of the type <code>PORTLET</code> or <code>FULL</code> are
-     * allowed in the response. The same restriction
-     * is true for all downstream URLs that result from this response.
-     * Attempts to create URLs that are not of type
-     * <code>PORTLET</code> or <code>FULL</code> will result in an 
-     * <code>IllegalStateException</code>.
-     * <p>
-     * URLs of the type <code>PORTLET</code> are cacheable on the portlet
-     * level in the browser and can be served from the browser cache for as long
-     * as the state of this portlet does not change.
-     */
-	public static final String PORTLET = "cacheLevelPortlet";
-
-	/**
-     * The URL of type <code>PAGE</code> may contain artifacts that require
-     * knowledge of the state of the complete page, like
-     * <code>PortletURLs</code>.
-     * <p>
-     * URLs of the type <code>PAGE</code> are only cacheable on the page level
-     * and can only be served from the browser cache as long as no state on the
-     * page changes.
-     */
-	public static final String PAGE = "cacheLevelPage";
-
-	/**
-	 * Property that the portlet can set for resources with caching
-	 * type <code>FULL</code> via the <code>setProperty</code> method
-	 * on the <code>ResourceURL</code>.
-	 * <p>
-	 * When set, this property indicates to the portal application
-	 * that it can share this resource across different portlet applications.
-	 * <p>
-	 * The value of this property should be a QName in the 
-	 * format of <code>javax.xml.namespace.QName.toString()</code>.
-	 */
-	public static final String SHARED = "javax.portlet.shared";
-
-	
-	/**
-     * Allows setting a resource ID that can be retrieved when serving the
-     * resource through the {@link ResourceRequest#getResourceID} method.
-     * 
-     * @param resourceID
-     *            ID for this resource URL
-     */
-	public void setResourceID(String resourceID);
-
-	/**
-	 * Returns the cache level of this resource URL.
-	 * <p>
-	 * Possible return values are: <code>FULL, PORTLET</code> 
-	 * or <code>PAGE</code>.
-	 * 
-     * @return  the cache level of this resource URL.
-     */
-	public String getCacheability();
-
-	/**
-	 * Sets the cache level of this resource URL.
-	 * <p>
-	 * Possible values are: <code>FULL, PORTLET</code> 
-	 * or <code>PAGE</code>.
-	 * <p>
-	 * Note that if this URL is created inside a 
-	 * <code>serveResource</code> call it must have
-	 * at minimum the same cacheablity, or a more
-	 * restrictive one, as the parent resource URL,
-	 * otherwise an IllegalStateException is thrown.
-	 * <p>
-	 * The default cache level of a resource URL is either the cache level of the
-	 * parent resource URL, or <code>PAGE</code> if no parent resource URL is
-	 * available.
-	 * 
-     * @param cacheLevel  the cache level of this resource URL.
-     * @throws java.lang.IllegalStateException  
-     * 			if this resource URL has a weaker cache level
-     * 			than the parent resource URL.
-     * @throws java.lang.IllegalArgumentException
-     * 			if the cacheLevel is unknown to the portlet container
-     */
-	public void setCacheability(String cacheLevel);
-
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/StateAwareResponse.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/StateAwareResponse.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/StateAwareResponse.java
deleted file mode 100644
index 3cb87f0..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/StateAwareResponse.java
+++ /dev/null
@@ -1,292 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The <CODE>StateAwareResponse</CODE> represents a response that can modify
- * state information or send events.<BR>
- * It extends the PortletResponse interface.
- * 
- * @since 2.0
- * @see PortletResponse
- */
-public interface StateAwareResponse extends PortletResponse {
-
-	/**
-     * Sets the window state of a portlet to the given window state.
-     * <p>
-     * Possible values are the standard window states and any custom window
-     * states supported by the portal and the portlet. Standard window states
-     * are:
-     * <ul>
-     * <li>MINIMIZED
-     * <li>NORMAL
-     * <li>MAXIMIZED
-     * </ul>
-     * 
-     * @param windowState
-     *            the new portlet window state
-     * 
-     * @exception WindowStateException
-     *                if the portlet cannot switch to the specified window
-     *                state. To avoid this exception the portlet can check the
-     *                allowed window states with
-     *                <code>Request.isWindowStateAllowed()</code>.
-     * @exception java.lang.IllegalStateException
-     *                if the method is invoked after <code>sendRedirect</code>
-     *                has been called.
-     * 
-     * @see WindowState
-     */
-
-	public void setWindowState(WindowState windowState)
-			throws WindowStateException;
-
-	/**
-     * Sets the portlet mode of a portlet to the given portlet mode.
-     * <p>
-     * Possible values are the standard portlet modes and any custom portlet
-     * modes supported by the portal and the portlet. Portlets must declare in
-     * the deployment descriptor the portlet modes they support for each markup
-     * type. Standard portlet modes are:
-     * <ul>
-     * <li>EDIT
-     * <li>HELP
-     * <li>VIEW
-     * </ul>
-     * <p>
-     * Note: The portlet may still be called in a different window state in the
-     * next render call, depending on the portlet container / portal.
-     * 
-     * @param portletMode
-     *            the new portlet mode
-     * 
-     * @exception PortletModeException
-     *                if the portlet cannot switch to this portlet mode, because
-     *                the portlet or portal does not support it for this markup,
-     *                or the current user is not allowed to switch to this
-     *                portlet mode. To avoid this exception the portlet can
-     *                check the allowed portlet modes with
-     *                <code>Request.isPortletModeAllowed()</code>.
-     * @exception java.lang.IllegalStateException
-     *                if the method is invoked after <code>sendRedirect</code>
-     *                has been called.
-     */
-
-	public void setPortletMode(PortletMode portletMode)
-			throws PortletModeException;
-
-	/**
-     * Sets a parameter map for the render request.
-     * <p>
-     * All previously set render parameters are cleared.
-     * <p>
-     * These parameters will be accessible in all sub-sequent render calls via
-     * the <code>PortletRequest.getParameter</code> call until a new request
-     * is targeted to the portlet.
-     * <p>
-     * The given parameters do not need to be encoded prior to calling this
-     * method.
-     * <p>
-     * The portlet should not modify the map any further after calling
-     * this method.
-     * 
-     * @param parameters
-     *            Map containing parameter names for the render phase as keys
-     *            and parameter values as map values. The keys in the parameter
-     *            map must be of type String. The values in the parameter map
-     *            must be of type String array (<code>String[]</code>).
-     * 
-     * @exception java.lang.IllegalArgumentException
-     *                if parameters is <code>null</code>, if any of the
-     *                keys in the Map are <code>null</code>, if any of
-     *                the keys is not a String, or if any of the values is not a
-     *                String array.
-     * @exception java.lang.IllegalStateException
-     *                if the method is invoked after <code>sendRedirect</code>
-     *                has been called.
-     */
-
-	public void setRenderParameters(java.util.Map<String, String[]> parameters);
-
-	/**
-     * Sets a String parameter for the render request.
-     * <p>
-     * These parameters will be accessible in all sub-sequent render calls via
-     * the <code>PortletRequest.getParameter</code> call until a request is
-     * targeted to the portlet.
-     * <p>
-     * This method replaces all parameters with the given key.
-     * <p>
-     * The given parameter do not need to be encoded prior to calling this
-     * method.
-     * 
-     * @param key
-     *            key of the render parameter
-     * @param value
-     *            value of the render parameter
-     * 
-     * @exception java.lang.IllegalArgumentException
-     *                if key is <code>null</code>.
-     * @exception java.lang.IllegalStateException
-     *                if the method is invoked after <code>sendRedirect</code>
-     *                has been called.
-     */
-
-	public void setRenderParameter(String key, String value);
-
-	/**
-     * Sets a String array parameter for the render request.
-     * <p>
-     * These parameters will be accessible in all sub-sequent render calls via
-     * the <code>PortletRequest.getParameter</code> call until a request is
-     * targeted to the portlet.
-     * <p>
-     * This method replaces all parameters with the given key.
-     * <p>
-     * The given parameter do not need to be encoded prior to calling this
-     * method.
-     * 
-     * @param key
-     *            key of the render parameter
-     * @param values
-     *            values of the render parameter
-     * 
-     * @exception java.lang.IllegalArgumentException
-     *                if key or value are <code>null</code>.
-     * @exception java.lang.IllegalStateException
-     *                if the method is invoked after <code>sendRedirect</code>
-     *                has been called.
-     */
-
-	public void setRenderParameter(String key, String[] values);
-
-	/**
-     * Publishes an Event with the given payload.
-     * <p>
-     * The object type of the value must be compliant with the specified event
-     * type in the portlet deployment descriptor.
-     * <p>
-     * The value must have a valid JAXB binding and be serializable.
-     * 
-     * @param name
-     *            the event name to publish, must not be <code>null</code>
-     * @param value
-     *            the value of this event, must have a valid JAXB binding and 
-     *            be serializable, or <code>null</code>.
-     * 
-     * @exception java.lang.IllegalArgumentException
-     *                if name is <code>null</code>, the value is not
-     *                serializable, the value does not have a valid JAXB binding, the
-     *                object type of the value is not the same as specified in
-     *                the portlet deployment descriptor for this event name.
-     * @since 2.0
-     */
-	public void setEvent(javax.xml.namespace.QName name, java.io.Serializable value);
-
-	/**
-     * Publishes an Event with the given payload in the default namespace.
-     * <p>
-     * The name is treated as local part of the event QName and the namespace
-     * is either taken from the <code>default-event-namespace</code> element
-     * in the portlet deployment descriptor, or if this element is not provided
-     * the XML default namespace XMLConstants.NULL_NS_URI is used.
-     * <p>
-     * The object type of the value must be compliant with the specified event
-     * type in the portlet deployment descriptor.
-     * <p>
-     * The value must have a valid JAXB binding and be serializable.
-     * 
-     * @param name
-     *            the local part of the event name to publish, must not be <code>null</code>
-     * @param value
-     *            the value of this event, must have a valid JAXB binding and 
-     *            be serializable, or <code>null</code>.
-     * 
-     * @exception java.lang.IllegalArgumentException
-     *                if name is <code>null</code>, the value is not
-     *                serializable, the value does not have a valid JAXB binding, the
-     *                object type of the value is not the same as specified in
-     *                the portlet deployment descriptor for this event name.
-     * @since 2.0
-     */
-	public void setEvent(String name, java.io.Serializable value);
-
-
-	/**
-     * Returns a <code>Map</code> of the render parameters currently set on
-     * this response.
-     * <p>
-     * The values in the returned <code>Map</code> are from type String array (<code>String[]</code>).
-     * <p>
-     * If no parameters exist this method returns an empty <code>Map</code>.
-     * 
-     * @since 2.0
-     * 
-     * @return <code>Map</code> containing render parameter names as keys and
-     *         parameter values as map values, or an empty <code>Map</code> if
-     *         no parameters exist. The keys in the parameter map are of type
-     *         String. The values in the parameter map are of type String array (<code>String[]</code>).
-     */
-
-	public java.util.Map<String, String[]> getRenderParameterMap();
-
-	/**
-     * Returns the currently set portlet mode on this reponse.
-     * 
-     * @since 2.0
-     * 
-     * @return the portlet mode, or <code>null</code> if none is set
-     */
-
-	public PortletMode getPortletMode();
-
-	/**
-     * Returns the currently set window state on this response.
-     * 
-     * @since 2.0
-     * 
-     * @return the window state, or <code>null</code> if none is set
-     */
-
-	public WindowState getWindowState();
-
-
-	/**
-	 * Removes the specified public render parameter.
-	 * The name must reference a public render parameter defined
-	 * in the portlet deployment descriptor under the
-	 * <code>public-render-parameter</code> element with the
-	 * <code>identifier</code> mapping to the parameter name.
-	 * 
-	 * @param name			a <code>String</code> specifying 
-	 *					the name of the public render parameter to be removed
-	 *
-	 * @exception  java.lang.IllegalArgumentException 
-	 *                            if name is <code>null</code>.
-	 * @since 2.0
-	 */
-	public void removePublicRenderParameter(String name);
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/4fc38552/portlet-api_2.0_spec/src/main/java/javax/portlet/UnavailableException.java
----------------------------------------------------------------------
diff --git a/portlet-api_2.0_spec/src/main/java/javax/portlet/UnavailableException.java b/portlet-api_2.0_spec/src/main/java/javax/portlet/UnavailableException.java
deleted file mode 100644
index 7d8c80e..0000000
--- a/portlet-api_2.0_spec/src/main/java/javax/portlet/UnavailableException.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-/*
- * This source code implements specifications defined by the Java
- * Community Process. In order to remain compliant with the specification
- * DO NOT add / change / or delete method signatures!
- */
-
-package javax.portlet;
-
-/**
- * The portlet should throw the <CODE>UnavailableException</CODE> when 
- * the portlet is either temporarily or permanently unavailable to handle requests.
- *
- **/
-
-public class UnavailableException extends PortletException
-{
-
-    private boolean     permanent;         // needs admin action?
-    private int         seconds;           // unavailability estimate
-
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 
-     * Constructs a new exception with a descriptive
-     * message indicating that the portlet is permanently
-     * unavailable.
-     *
-     * @param text 	a <code>String</code> specifying the
-     *                  descriptive message
-     *
-     */
-
-    public UnavailableException(String text) {
-	super(text);
-
-	permanent = true;
-    }
-
-    /**
-     * Constructs a new exception with a descriptive message
-     * indicating that the portlet is temporarily unavailable
-     * and giving an estimate of how long it will be unavailable.
-     * 
-     * <p>In some cases, the portlet cannot make an estimate. For
-     * example, the portlet might know that a server it needs is
-     * not running, but it might not be able to report how long it will take
-     * to be restored to functionality. This can be indicated with
-     * a negative or zero value for the <code>seconds</code> argument.
-     *
-     * @param text	a <code>String</code> specifying the
-     *                  descriptive message. This message can be written
-     *                  to a log file or displayed for the user.
-     *
-     * @param seconds	an integer specifying the number of seconds
-     * 			for which the portlet expects to be unavailable; if
-     *			this is zero or negative, it indicates that the portlet
-     *			cannot make an estimate.
-     *
-     */
-    
-    public UnavailableException(String text, int seconds) {
-	super(text);
-
-	if (seconds <= 0)
-	    this.seconds = -1;
-	else
-	    this.seconds = seconds;
-
-	permanent = false;
-    }
-
-    /**
-     *
-     * Returns a <code>boolean</code> indicating
-     * whether the portlet is permanently unavailable.
-     * If so, something is wrong with the portlet, and the
-     * system administrator must take some corrective action.
-     *
-     * @return		<code>true</code> if the portlet is
-     *			permanently unavailable; <code>false</code>
-     *			if the portlet is temporarily
-     *			unavailable.
-     *
-     */
-     
-    public boolean isPermanent() {
-	return permanent;
-    }
-  
-
-    /**
-     * Returns the time in seconds for which the portlet can be expected to 
-     * be unavailable.  
-     * <p>
-     * If the portlet is called again while it is still unavailable, it
-     * indicates the same time estimate. No effort is
-     * made to correct for the time elapsed since the exception was
-     * first reported.
-     * <p>
-     * If this method returns zero or a negative number, the portlet
-     * is permanently unavailable or cannot provide an estimate of
-     * how long it will be unavailable. 
-     *
-     * @return		an integer specifying the number of seconds
-     *			the portlet will be temporarily unavailable,
-     *			or zero or a negative number if the portlet is permanently
-     *			unavailable or cannot make an estimate.
-     *
-     */
-     
-    public int getUnavailableSeconds() {
-	return permanent ? -1 : seconds;
-    }
-
-
-}