You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by kn...@apache.org on 2008/02/18 17:33:17 UTC
svn commit: r628800 - in
/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket:
Application.java Component.java MetaDataEntry.java MetaDataKey.java
PageMap.java RequestCycle.java Session.java
Author: knopp
Date: Mon Feb 18 08:33:16 2008
New Revision: 628800
URL: http://svn.apache.org/viewvc?rev=628800&view=rev
Log:
MetaData object doesn't have to be serializable for Application and RequestCycle metadata
Modified:
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Application.java
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataEntry.java
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/RequestCycle.java
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Application.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Application.java?rev=628800&r1=628799&r2=628800&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Application.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Application.java Mon Feb 18 08:33:16 2008
@@ -18,7 +18,6 @@
import java.io.IOException;
import java.io.InputStream;
-import java.io.Serializable;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collections;
@@ -466,7 +465,7 @@
* @return The metadata
* @see MetaDataKey
*/
- public final Serializable getMetaData(final MetaDataKey key)
+ public final Object getMetaData(final MetaDataKey key)
{
return key.get(metaData);
}
@@ -739,7 +738,7 @@
* @throws IllegalArgumentException
* @see MetaDataKey
*/
- public final synchronized void setMetaData(final MetaDataKey key, final Serializable object)
+ public final synchronized void setMetaData(final MetaDataKey key, final Object object)
{
metaData = key.set(metaData, object);
}
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java?rev=628800&r1=628799&r2=628800&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Component.java Mon Feb 18 08:33:16 2008
@@ -58,16 +58,16 @@
/**
* Component serves as the highest level abstract base class for all components.
- *
+ *
* <ul>
* <li><b>Identity </b>- All Components must have a non-null id which is retrieved by calling
* getId(). The id must be unique within the MarkupContainer that holds the Component, but does not
* have to be globally unique or unique within a Page's component hierarchy.
- *
+ *
* <li><b>Hierarchy </b>- A component has a parent which can be retrieved with {@link #getParent()}.
* If a component is an instance of MarkupContainer, it may have children. In this way it has a
* place in the hierarchy of components contained on a given page.
- *
+ *
* <li><b>Component Paths </b>- The path from the Page at the root of the component hierarchy to a
* given Component is simply the concatenation with dot separators of each id along the way. For
* example, the path "a.b.c" would refer to the component named "c" inside the MarkupContainer named
@@ -76,12 +76,12 @@
* bear a PageMap/Session-relative identifier as their id, so each absolute path will begin with a
* number, such as "0.a.b.c". To get a Component path relative to the page that contains it, you can
* call getPageRelativePath().
- *
+ *
* <li><b>LifeCycle </b>- Components participate in the following lifecycle phases:
* <ul>
* <li><b>Construction </b>- A Component is constructed with the Java language new operator.
* Children may be added during construction if the Component is a MarkupContainer.
- *
+ *
* <li><b>Request Handling </b>- An incoming request is processed by a protocol request handler
* such as WicketServlet. An associated Application object creates Session, Request and Response
* objects for use by a given Component in updating its model and rendering a response. These
@@ -89,7 +89,7 @@
* {@link Component#getRequestCycle()}. The convenience methods {@link Component#getRequest()},
* {@link Component#getResponse()} and {@link Component#getSession()} provide easy access to the
* contents of this container.
- *
+ *
* <li><b>Listener Invocation </b>- If the request references a listener on an existing Component,
* that listener is called, allowing arbitrary user code to handle events such as link clicks or
* form submits. Although arbitrary listeners are supported in Wicket, the need to implement a new
@@ -102,24 +102,24 @@
* interface methods in Java must be public). Instead, Form subclasses should override user-oriented
* methods such as onValidate(), onSubmit() and onError() (although only the latter two are likely
* to be overridden in practice).
- *
+ *
* <li><b>onBeginRequest </b>- The {@link Component#onBeginRequest()} method is called.
- *
+ *
* <li><b>Form Submit </b>- If a Form has been submitted and the Component is a FormComponent, the
* component's model is validated by a call to FormComponent.validate().
- *
+ *
* <li><b>Form Model Update </b>- If a valid Form has been submitted and the Component is a
* FormComponent, the component's model is updated by a call to FormComponent.updateModel().
- *
+ *
* <li><b>Rendering </b>- A markup response is generated by the Component via
* {@link Component#render()}, which calls subclass implementation code contained in
* {@link Component#onRender(org.apache.wicket.markup.MarkupStream)}. Once this phase begins, a
* Component becomes immutable. Attempts to alter the Component will result in a
* WicketRuntimeException.
- *
+ *
* <li><b>onEndRequest </b>() - The {@link Component#onEndRequest()} method is called.
* </ul>
- *
+ *
* <li><b>Component Models </b>- The primary responsibility of a component is to use its model (an
* object that implements IModel), which can be set via {@link Component#setModel(IModel model)} and
* retrieved via {@link Component#getModel()}, to render a response in an appropriate markup
@@ -128,29 +128,29 @@
* convenience method {@link Component#getModelObject()} is provided to retrieve the model Object
* from its IModel wrapper. A further convenience method, {@link Component#getModelObjectAsString()},
* is provided for the very common operation of converting the wrapped model Object to a String.
- *
+ *
* <li><b>Visibility </b>- Components which have setVisible(false) will return false from
* isVisible() and will not render a response (nor will their children).
- *
+ *
* <li><b>Page </b>- The Page containing any given Component can be retrieved by calling
* {@link Component#getPage()}. If the Component is not attached to a Page, an
* IllegalStateException will be thrown. An equivalent method, {@link Component#findPage()} is
* available for special circumstances where it might be desirable to get a null reference back
* instead.
- *
+ *
* <li><b>Session </b>- The Page for a Component points back to the Session that contains the Page.
* The Session for a component can be accessed with the convenience method getSession(), which
* simply calls getPage().getSession().
- *
+ *
* <li><b>Locale </b>- The Locale for a Component is available through the convenience method
* getLocale(), which is equivalent to getSession().getLocale().
- *
+ *
* <li><b>String Resources </b>- Components can have associated String resources via the
* Application's Localizer, which is available through the method {@link Component#getLocalizer()}.
* The convenience methods {@link Component#getString(String key)} and
* {@link Component#getString(String key, IModel model)} wrap the identical methods on the
* Application Localizer for easy access in Components.
- *
+ *
* <li><b>Style </b>- The style ("skin") for a component is available through
* {@link Component#getStyle()}, which is equivalent to getSession().getStyle(). Styles are
* intended to give a particular look to a Component or Resource that is independent of its Locale.
@@ -158,39 +158,39 @@
* the design look of "ocean" to the user. If the Session's style is set to "ocean" and these
* resources are given names suffixed with "_ocean", Wicket's resource management logic will prefer
* these resources to other resources, such as default resources, which are not as good of a match.
- *
+ *
* <li><b>Variation </b>- Whereas Styles are Session (user) specific, variations are component
* specific. E.g. if the Style is "ocean" and the Variation is "NorthSea", than the resources are
* given the names suffixed with "_ocean_NorthSea".
- *
+ *
* <li><b>AttributeModifiers </b>- You can add one or more {@link AttributeModifier}s to any
* component if you need to programmatically manipulate attributes of the markup tag to which a
* Component is attached.
- *
+ *
* <li><b>Application, ApplicationSettings and ApplicationPages </b>- The getApplication() method
* provides convenient access to the Application for a Component via getSession().getApplication().
* The getApplicationSettings() method is equivalent to getApplication().getSettings(). The
* getApplicationPages is equivalent to getApplication().getPages().
- *
+ *
* <li><b>Feedback Messages </b>- The {@link Component#debug(String)},
* {@link Component#info(String)}, {@link Component#warn(String)},
* {@link Component#error(java.io.Serializable)} and {@link Component#fatal(String)} methods
* associate feedback messages with a Component. It is generally not necessary to use these methods
* directly since Wicket validators automatically register feedback messages on Components. Any
* feedback message for a given Component can be retrieved with {@link Component#getFeedbackMessage}.
- *
+ *
* <li><b>Page Factory </b>- It is possible to change the way that Pages are constructed by
* overriding the {@link Component#getPageFactory()} method, returning your own implementation of
* {@link org.apache.wicket.IPageFactory}.
- *
+ *
* <li><b>Versioning </b>- Pages are the unit of versioning in Wicket, but fine-grained control of
* which Components should participate in versioning is possible via the
* {@link Component#setVersioned(boolean)} method. The versioning participation of a given Component
* can be retrieved with {@link Component#isVersioned()}.
- *
+ *
* <li><b>AJAX support</b>- Components can be re-rendered after the whole Page has been rendered
* at least once by calling doRender().
- *
+ *
* @author Jonathan Locke
* @author Chris Turner
* @author Eelco Hillenius
@@ -212,7 +212,7 @@
/**
* Construct.
- *
+ *
* @param model
*/
public ComponentModelChange(IModel model)
@@ -261,7 +261,7 @@
/**
* Called at each component in a traversal.
- *
+ *
* @param component
* The component
* @return CONTINUE_TRAVERSAL (null) if the traversal should continue, or a non-null return
@@ -273,7 +273,7 @@
/**
* Change object for undoing addition of behavior
- *
+ *
* @author Igor Vaynberg (ivaynberg)
*/
private final class AddedBehaviorChange extends Change
@@ -285,7 +285,7 @@
/**
* Construct.
- *
+ *
* @param behavior
*/
public AddedBehaviorChange(IBehavior behavior)
@@ -307,7 +307,7 @@
/**
* Undo change for component border property
- *
+ *
* @author ivaynberg
*/
private class ComponentBorderChange extends Change
@@ -325,7 +325,7 @@
/**
* Change object for undoing removal of behavior
- *
+ *
* @author Igor Vaynberg (ivaynberg)
*/
private final class RemovedBehaviorChange extends Change
@@ -337,7 +337,7 @@
/**
* Construct.
- *
+ *
* @param behavior
*/
public RemovedBehaviorChange(IBehavior behavior)
@@ -373,7 +373,7 @@
/**
* Construct.
- *
+ *
* @param component
*/
EnabledChange(final Component component)
@@ -414,7 +414,7 @@
/**
* Construct.
- *
+ *
* @param component
*/
VisibilityChange(final Component component)
@@ -453,12 +453,12 @@
* When a component is not allowed to be enabled (in effect disabled through the implementation
* of this interface), Wicket will try to prevent model updates too. This is not completely fail
* safe, as constructs like:
- *
+ *
* <pre>
* User u = (User)getModelObject();
* u.setName("got you there!");
* </pre>
- *
+ *
* can't be prevented. Indeed it can be argued that any model protection is best dealt with in
* your model objects to be completely secured. Wicket will catch all normal framework-directed
* use though.
@@ -854,7 +854,7 @@
/**
* Constructor. All components have names. A component's id cannot be null. This is the minimal
* constructor of component. It does not register a model.
- *
+ *
* @param id
* The non-null id of this component
* @throws WicketRuntimeException
@@ -876,12 +876,12 @@
/**
* Constructor. All components have names. A component's id cannot be null. This constructor
* includes a model.
- *
+ *
* @param id
* The non-null id of this component
* @param model
* The component's model
- *
+ *
* @throws WicketRuntimeException
* Thrown if the component has been given a null id.
*/
@@ -893,13 +893,13 @@
/**
* Adds an behavior modifier to the component.
- *
+ *
* <p>
* Note: this method is override to enable users to do things like discussed in <a
* href="http://www.nabble.com/Why-add%28IBehavior%29-is-final--tf2598263.html#a7248198">this
* thread</a>.
* </p>
- *
+ *
* @param behavior
* The behavior modifier to be added
* @return this (to allow method call chaining)
@@ -1034,7 +1034,7 @@
if (feedbacks == null)
{
feedbacks = new ArrayList();
- getRequestCycle().setMetaData(FEEDBACK_LIST, (Serializable)feedbacks);
+ getRequestCycle().setMetaData(FEEDBACK_LIST, feedbacks);
}
feedbacks.add(this);
}
@@ -1042,7 +1042,7 @@
/**
* Redirects to any intercept page previously specified by a call to redirectToInterceptPage.
- *
+ *
* @return True if an original destination was redirected to
* @see Component#redirectToInterceptPage(Page)
*/
@@ -1053,7 +1053,7 @@
/**
* Registers a debug feedback message for this component
- *
+ *
* @param message
* The feedback message
*/
@@ -1103,7 +1103,7 @@
/**
* THIS IS WICKET INTERNAL ONLY. DO NOT USE IT.
- *
+ *
* Traverses all behaviors and calls detachModel() on them. This is needed to cleanup behavior
* after render. This method is necessary for {@link AjaxRequestTarget} to be able to cleanup
* component's behaviors after header contribution has been done (which is separated from
@@ -1147,7 +1147,7 @@
/**
* Registers an error feedback message for this component
- *
+ *
* @param message
* The feedback message
*/
@@ -1159,7 +1159,7 @@
/**
* Registers an fatal error feedback message for this component
- *
+ *
* @param message
* The feedback message
*/
@@ -1171,7 +1171,7 @@
/**
* Finds the first container parent of this component of the given class.
- *
+ *
* @param c
* MarkupContainer class to search for
* @return First container parent that is an instance of the given class, or null if none can be
@@ -1220,7 +1220,7 @@
/**
* Gets interface to application that this component is a part of.
- *
+ *
* @return The application associated with the session that this component is in.
* @see Application
*/
@@ -1232,7 +1232,7 @@
/**
* Gets the currently coupled {@link IBehavior}s as a unmodifiable list. Returns an empty list
* rather than null if there are no behaviors coupled to this component.
- *
+ *
* @return The currently coupled behaviors as a unmodifiable list
*/
public final List/* <IBehavior> */getBehaviors()
@@ -1268,10 +1268,10 @@
/**
* Gets the converter that should be used by this component.
- *
+ *
* @param type
* The type to convert to
- *
+ *
* @return The converter that should be used by this component
*/
public IConverter getConverter(Class/* <?> */type)
@@ -1281,7 +1281,7 @@
/**
* Gets whether model strings should be escaped.
- *
+ *
* @return Returns whether model strings should be escaped
*/
public final boolean getEscapeModelStrings()
@@ -1299,7 +1299,7 @@
/**
* Gets the id of this component.
- *
+ *
* @return The id of this component
*/
public String getId()
@@ -1318,7 +1318,7 @@
/**
* Gets the locale for this component. By default, it searches its parents for a locale. If no
* parents (it's a recursive search) returns a locale, it gets one from the session.
- *
+ *
* @return The locale to be used for this component
* @see Session#getLocale()
*/
@@ -1334,7 +1334,7 @@
/**
* Convenience method to provide easy access to the localizer object within any component.
- *
+ *
* @return The localizer object
*/
public final Localizer getLocalizer()
@@ -1344,14 +1344,14 @@
/**
* THIS IS WICKET INTERNAL ONLY. DO NOT USE IT.
- *
+ *
* Get a copy of the markup's attributes which are associated with the component.
* <p>
* Modifications to the map returned don't change the tags attributes. It is just a copy.
* <p>
* Note: The component must have been added (directly or indirectly) to a container with an
* associated markup file (Page, Panel or Border).
- *
+ *
* @return markup attributes
*/
public final ValueMap getMarkupAttributes()
@@ -1397,11 +1397,11 @@
* <p>
* Note: This method should only be called after the component or its parent have been added to
* the page.
- *
+ *
* @param createIfDoesNotExist
* When there is no existing markup id, determines whether it should be generated or
* whether <code>null</code> should be returned.
- *
+ *
* @return markup id of the component
*/
@@ -1472,7 +1472,7 @@
* <p>
* Note: This method should only be called after the component or its parent have been added to
* the page.
- *
+ *
* @return markup id of the component
*/
public String getMarkupId()
@@ -1482,7 +1482,7 @@
/**
* Gets metadata for this component using the given key.
- *
+ *
* @param key
* The key for the data
* @return The metadata or null of no metadata was found for the given key
@@ -1490,7 +1490,7 @@
*/
public final Serializable getMetaData(final MetaDataKey key)
{
- return key.get(getMetaData());
+ return (Serializable)key.get(getMetaData());
}
private MetaDataEntry[] getMetaData()
@@ -1520,7 +1520,7 @@
/**
* Gets the model. It returns the object that wraps the backing model.
- *
+ *
* @return The model
*/
public final IModel getModel()
@@ -1539,7 +1539,7 @@
/**
* Gets the backing model object; this is shorthand for getModel().getObject().
- *
+ *
* @return The backing model object
*/
public final Object getModelObject()
@@ -1562,10 +1562,10 @@
* sensitive chars are escaped but not all none-ascii chars. Proper HTML encoding should be used
* instead. In case you really need a fully escaped model string you may call
* {@link Strings#escapeMarkup(String, boolean, boolean)} on the model string returned.
- *
+ *
* @see Strings#escapeMarkup(String, boolean, boolean)
* @see #getEscapeModelStrings()
- *
+ *
* @return Model object for this component as a string
*/
public final String getModelObjectAsString()
@@ -1579,10 +1579,10 @@
* sensitive chars are escaped but not all none-ascii chars. Proper HTML encoding should be used
* instead. In case you really need a fully escaped model string you may call
* {@link Strings#escapeMarkup(String, boolean, boolean)} on the model string returned.
- *
+ *
* @see Strings#escapeMarkup(String, boolean, boolean)
* @see #getEscapeModelStrings()
- *
+ *
* @param modelObject
* Model object to convert to string
* @return The string
@@ -1614,7 +1614,7 @@
/**
* Gets whether or not component will output id attribute into the markup. id attribute will be
* set to the value returned from {@link Component#getMarkupId()}.
- *
+ *
* @return whether or not component will output id attribute into the markup
*/
public final boolean getOutputMarkupId()
@@ -1624,7 +1624,7 @@
/**
* Gets whether or not an invisible component will render a placeholder tag.
- *
+ *
* @return true if a placeholder tag should be rendered
*/
public final boolean getOutputMarkupPlaceholderTag()
@@ -1634,7 +1634,7 @@
/**
* Gets the page holding this component.
- *
+ *
* @return The page holding this component
* @throws IllegalStateException
* Thrown if component is not yet attached to a Page.
@@ -1664,7 +1664,7 @@
/**
* Gets the path to this component relative to the page it is in.
- *
+ *
* @return The path to this component relative to the page it is in
*/
public final String getPageRelativePath()
@@ -1674,7 +1674,7 @@
/**
* Gets any parent container, or null if there is none.
- *
+ *
* @return Any parent container, or null if there is none
*/
public final MarkupContainer getParent()
@@ -1684,7 +1684,7 @@
/**
* Gets this component's path.
- *
+ *
* @return Colon separated path to this component in the component hierarchy
*/
public final String getPath()
@@ -1704,7 +1704,7 @@
/**
* If false the component's tag will be printed as well as its body (which is default). If true
* only the body will be printed, but not the component's tag.
- *
+ *
* @return If true, the component tag will not be printed
*/
public final boolean getRenderBodyOnly()
@@ -1729,7 +1729,7 @@
/**
* Gets the active request cycle for this component
- *
+ *
* @return The request cycle
*/
public final RequestCycle getRequestCycle()
@@ -1747,7 +1747,7 @@
/**
* Gets the current Session object.
- *
+ *
* @return The Session that this component is in
*/
public Session getSession()
@@ -1816,9 +1816,9 @@
/**
* Gets the style of this component (see {@link org.apache.wicket.Session}).
- *
+ *
* @return The style of this component.
- *
+ *
* @see org.apache.wicket.Session
* @see org.apache.wicket.Session#getStyle()
*/
@@ -1844,7 +1844,7 @@
* Gets the variation string of this component that will be used to look up markup for this
* component. Subclasses can override this method to define by an instance what markup variation
* should be picked up. By default it will return null or the value of a parent.
- *
+ *
* @return The variation of this component.
*/
public String getVariation()
@@ -1859,7 +1859,7 @@
/**
* Gets whether this component was rendered at least once.
- *
+ *
* @return true if the component has been rendered before, false if it is merely constructed
*/
public final boolean hasBeenRendered()
@@ -1885,7 +1885,7 @@
/**
* Registers an informational feedback message for this component
- *
+ *
* @param message
* The feedback message
*/
@@ -1915,7 +1915,7 @@
/**
* Authorizes an action for a component.
- *
+ *
* @param action
* The action to authorize
* @return True if the action is allowed
@@ -1934,7 +1934,7 @@
/**
* Returns true if this component is an ancestor of the given component
- *
+ *
* @param component
* The component to check
* @return True if the given component has this component as an ancestor
@@ -1971,7 +1971,7 @@
* Gets whether this component is enabled. Specific components may decide to implement special
* behavior that uses this property, like web form components that add a disabled='disabled'
* attribute when enabled is false.
- *
+ *
* @return Whether this component is enabled.
*/
public boolean isEnabled()
@@ -1982,7 +1982,7 @@
/**
* Checks the security strategy if the {@link Component#RENDER} action is allowed on this
* component
- *
+ *
* @return ture if {@link Component#RENDER} action is allowed, false otherwise
*/
public final boolean isRenderAllowed()
@@ -1994,7 +1994,7 @@
* Returns if the component is stateless or not. It checks the stateless hint if that is false
* it returns directly false. If that is still true it checks all its behaviors if they can be
* stateless.
- *
+ *
* @return whether the component is stateless.
*/
public final boolean isStateless()
@@ -2050,7 +2050,7 @@
* method, it is a good idea to keep it cheap in terms of processing. Alternatively, you can
* call {@link #setVisible(boolean)}.
* <p>
- *
+ *
* @return True if component and any children are visible
*/
public boolean isVisible()
@@ -2060,7 +2060,7 @@
/**
* Checks if the component itself and all its parents are visible.
- *
+ *
* @return true if the component and all its parents are visible.
*/
public final boolean isVisibleInHierarchy()
@@ -2118,7 +2118,7 @@
/**
* Creates a new page using the component's page factory
- *
+ *
* @param c
* The class of page to create
* @return The new page
@@ -2130,7 +2130,7 @@
/**
* Creates a new page using the component's page factory
- *
+ *
* @param c
* The class of page to create
* @param parameters
@@ -2172,10 +2172,10 @@
* is saved for future use by method continueToOriginalDestination(); Only use this method when
* you plan to continue to the current url at some later time; otherwise just use
* setResponsePage or - when you are in a constructor or checkAccessMethod, call redirectTo.
- *
+ *
* @param page
* The sign in page
- *
+ *
* @see Component#continueToOriginalDestination()
*/
public final void redirectToInterceptPage(final Page page)
@@ -2199,10 +2199,10 @@
/**
* Removes behavior from component
- *
+ *
* @param behavior
* behavior to remove
- *
+ *
* @return this (to allow method call chaining)
*/
public Component remove(final IBehavior behavior)
@@ -2267,7 +2267,7 @@
* <p>
* For component level re-render (e.g. AJAX) please call {@link #renderComponent(MarkupStream)}.
* Though render() does seem to work, it will fail for panel children.
- *
+ *
* @param markupStream
*/
public final void render(final MarkupStream markupStream)
@@ -2426,7 +2426,7 @@
* Renders the component at the current position in the given markup stream. The method
* onComponentTag() is called to allow the component to mutate the start tag. The method
* onComponentTagBody() is then called to permit the component to render its body.
- *
+ *
* @param markupStream
* The markup stream
*/
@@ -2531,7 +2531,7 @@
* NOT intended for overriding by framework clients. Rather, use
* {@link IHeaderContributor#renderHead(org.apache.wicket.markup.html.IHeaderResponse)}
* </p>
- *
+ *
* @param container
* The HtmlHeaderContainer
*/
@@ -2567,9 +2567,9 @@
* as this component. This method serves as a shortcut to
* <code>this.getParent().replace(replacement)</code> and provides a better context for
* errors.
- *
+ *
* @since 1.2.1
- *
+ *
* @param replacement
* component to replace this one
*/
@@ -2626,7 +2626,7 @@
/**
* Assigns a component border to this component. If called with <code>null</code> any previous
* border will be cleared.
- *
+ *
* @param border
* component border to assign, or <code>null</code> to clear any previous
* @return component for chaining
@@ -2647,7 +2647,7 @@
* attribute when enabled is false. If it is not enabled, it will not be allowed to call any
* listener method on it (e.g. Link.onClick) and the model object will be protected (for the
* common use cases, not for programmer's misuse)
- *
+ *
* @param enabled
* whether this component is enabled
* @return This
@@ -2675,7 +2675,7 @@
/**
* Sets whether model strings should be escaped.
- *
+ *
* @param escapeMarkup
* True is model strings should be escaped
* @return This
@@ -2712,9 +2712,9 @@
* <p>
* If null is passed in the user defined value is cleared and markup id value will fall back on
* automatically generated value
- *
+ *
* @see #getMarkupId()
- *
+ *
* @param markupId
* markup id value or null to clear any previous user defined value
*/
@@ -2732,7 +2732,7 @@
* Sets the metadata for this component using the given key. If the metadata object is not of
* the correct type for the metadata key, an IllegalArgumentException will be thrown. For
* information on creating MetaDataKeys, see {@link MetaDataKey}.
- *
+ *
* @param key
* The singleton key for the metadata
* @param object
@@ -2773,7 +2773,7 @@
* WARNING: DO NOT OVERRIDE THIS METHOD UNLESS YOU HAVE A VERY GOOD REASON FOR IT. OVERRIDING
* THIS MIGHT OPEN UP SECURITY LEAKS AND BREAK BACK-BUTTON SUPPORT.
* </p>
- *
+ *
* @param model
* The model
* @return This
@@ -2847,7 +2847,7 @@
/**
* Sets the backing model object; shorthand for getModel().setObject(object).
- *
+ *
* @param object
* The object to set
* @return This
@@ -2883,13 +2883,13 @@
/**
* Sets whether or not component will output id attribute into the markup. id attribute will be
* set to the value returned from {@link Component#getMarkupId()}.
- *
+ *
* @param output
* True if the component will out the id attribute into markup. Please note that the
* default behavior is to use the same id as the component. This means that your
* component must begin with [a-zA-Z] in order to generate a valid markup id
* according to: http://www.w3.org/TR/html401/types.html#type-name
- *
+ *
* @return this for chaining
*/
public final Component setOutputMarkupId(final boolean output)
@@ -2902,15 +2902,15 @@
* Render a placeholder tag when the component is not visible. The tag is of form:
* <componenttag style="display:none;" id="componentid"/>. This method will also call
* <code>setOutputMarkupId(true)</code>.
- *
+ *
* This is useful, for example, in ajax situations where the component starts out invisible and
* then becomes visible through an ajax update. With a placeholder tag already in the markup you
* do not need to repaint this component's parent, instead you can repaint the component
* directly.
- *
+ *
* When this method is called with parameter <code>false</code> the outputmarkupid flag is not
* reverted to false.
- *
+ *
* @param outputTag
* @return this for chaining
*/
@@ -2946,7 +2946,7 @@
/**
* If false the component's tag will be printed as well as its body (which is default). If true
* only the body will be printed, but not the component's tag.
- *
+ *
* @param renderTag
* If true, the component tag will not be printed
* @return This
@@ -2959,7 +2959,7 @@
/**
* Sets the page that will respond to this request
- *
+ *
* @param cls
* The response page class
* @see RequestCycle#setResponsePage(Class)
@@ -2972,7 +2972,7 @@
/**
* Sets the page class and its parameters that will respond to this request
- *
+ *
* @param cls
* The response page class
* @param parameters
@@ -2986,7 +2986,7 @@
/**
* Sets the page that will respond to this request
- *
+ *
* @param page
* The response page
* @see RequestCycle#setResponsePage(Page)
@@ -3010,7 +3010,7 @@
/**
* Sets whether this component and any children are visible.
- *
+ *
* @param visible
* True if this component and any children should be visible
* @return This
@@ -3031,7 +3031,7 @@
/**
* Gets the string representation of this component.
- *
+ *
* @return The path to this component
*/
public String toString()
@@ -3082,9 +3082,9 @@
* Returns a bookmarkable URL that references a given page class using a given set of page
* parameters. Since the URL which is returned contains all information necessary to instantiate
* and render the page, it can be stored in a user's browser as a stable bookmark.
- *
+ *
* @see RequestCycle#urlFor(IPageMap, Class, PageParameters)
- *
+ *
* @param pageClass
* Class of page
* @param parameters
@@ -3099,7 +3099,7 @@
/**
* Gets a URL for the listener interface on a behavior (e.g. IBehaviorListener on
* AjaxPagingNavigationBehavior).
- *
+ *
* @param behaviour
* The behavior that the URL should point to
* @param listener
@@ -3116,17 +3116,17 @@
* Returns a bookmarkable URL that references a given page class using a given set of page
* parameters. Since the URL which is returned contains all information necessary to instantiate
* and render the page, it can be stored in a user's browser as a stable bookmark.
- *
+ *
* @see RequestCycle#urlFor(IPageMap, Class, PageParameters)
- *
+ *
* @param pageMap
* Page map to use
* @param pageClass
* Class of page
* @param parameters
* Parameters to page
- *
- *
+ *
+ *
* @return Bookmarkable URL to page
*/
public final CharSequence urlFor(final IPageMap pageMap, final Class pageClass,
@@ -3137,12 +3137,12 @@
/**
* Returns a URL that references the given request target.
- *
+ *
* @see RequestCycle#urlFor(IRequestTarget)
- *
+ *
* @param requestTarget
* the request target to reference
- *
+ *
* @return a URL that references the given request target
*/
public final CharSequence urlFor(final IRequestTarget requestTarget)
@@ -3152,7 +3152,7 @@
/**
* Gets a URL for the listener interface (e.g. ILinkListener).
- *
+ *
* @param listener
* The listener interface that the URL should call
* @return The URL
@@ -3164,9 +3164,9 @@
/**
* Returns a URL that references a shared resource through the provided resource reference.
- *
+ *
* @see RequestCycle#urlFor(ResourceReference)
- *
+ *
* @param resourceReference
* The resource reference
* @return The url for the shared resource
@@ -3179,7 +3179,7 @@
/**
* Traverses all parent components of the given class in this container, calling the visitor's
* visit method at each one.
- *
+ *
* @param c
* Class
* @param visitor
@@ -3212,7 +3212,7 @@
/**
* Registers a warning feedback message for this component.
- *
+ *
* @param message
* The feedback message
*/
@@ -3265,7 +3265,7 @@
/**
* Adds state change to page.
- *
+ *
* @param change
* The change
*/
@@ -3281,7 +3281,7 @@
/**
* Checks whether the given type has the expected name.
- *
+ *
* @param tag
* The tag to check
* @param name
@@ -3301,7 +3301,7 @@
/**
* Checks that a given tag has a required attribute value.
- *
+ *
* @param tag
* The tag
* @param key
@@ -3329,7 +3329,7 @@
/**
* Checks whether the hierarchy may be changed at all, and throws an exception if this is not
* the case.
- *
+ *
* @param component
* the component which is about to be added or removed
*/
@@ -3363,7 +3363,7 @@
/**
* Prefixes an exception message with useful information about this. component.
- *
+ *
* @param message
* The message
* @return The modified message
@@ -3375,7 +3375,7 @@
/**
* Finds the markup stream for this component.
- *
+ *
* @return The markup stream for this component. Since a Component cannot have a markup stream,
* we ask this component's parent to search for it.
*/
@@ -3393,7 +3393,7 @@
/**
* If this Component is a Page, returns self. Otherwise, searches for the nearest Page parent in
* the component hierarchy. If no Page parent can be found, null is returned.
- *
+ *
* @return The Page or null if none can be found
*/
protected final Page findPage()
@@ -3406,10 +3406,10 @@
* Gets the subset of the currently coupled {@link IBehavior}s that are of the provided type as
* a unmodifiable list or null if there are no behaviors attached. Returns an empty list rather
* than null if there are no behaviors coupled to this component.
- *
+ *
* @param type
* The type or null for all
- *
+ *
* @return The subset of the currently coupled behaviors that are of the provided type as a
* unmodifiable list or null
*/
@@ -3435,7 +3435,7 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT USE IT!
- *
+ *
* @param flag
* The flag to test
* @return True if the flag is set
@@ -3447,7 +3447,7 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT USE IT!
- *
+ *
* @param flag
* The flag to test
* @return True if the flag is set
@@ -3459,7 +3459,7 @@
/**
* Finds the innermost IModel object for an IModel that might contain nested IModel(s).
- *
+ *
* @param model
* The model
* @return The innermost (most nested) model
@@ -3483,7 +3483,7 @@
* Gets the value defaultModelComparator. Implementations of this interface can be used in the
* Component.getComparator() for testing the current value of the components model data with the
* new value that is given.
- *
+ *
* @return the value defaultModelComparator
*/
protected IModelComparator getModelComparator()
@@ -3496,7 +3496,7 @@
* stateless, otherwise the component will be treat as stateful. In order for page to be
* stateless (and not to be stored in session), all components (and component behaviors) must be
* stateless.
- *
+ *
* @return whether the component can be stateless
*/
protected boolean getStatelessHint()
@@ -3508,7 +3508,7 @@
* Called when a null model is about to be retrieved in order to allow a subclass to provide an
* initial model. This gives FormComponent, for example, an opportunity to instantiate a model
* on the fly using the containing Form's model.
- *
+ *
* @return The model
*/
protected IModel initModel()
@@ -3542,9 +3542,9 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL OR OVERRIDE.
- *
+ *
* Called when a request begins.
- *
+ *
* @Deprecated use {@link #onBeforeRender()} instead
*/
protected final void internalOnAttach()
@@ -3553,11 +3553,11 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL OR OVERRIDE.
- *
+ *
* Called when a request ends.
- *
+ *
* @Deprecated use {@link #onBeforeRender()} instead
- *
+ *
*/
protected final void internalOnDetach()
{
@@ -3565,7 +3565,7 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL OR OVERRIDE.
- *
+ *
* Called anytime a model is changed via setModel or setModelObject.
*/
protected void internalOnModelChanged()
@@ -3574,7 +3574,7 @@
/**
* Convenience method that sets the attached flags.
- *
+ *
* @param attached
*/
protected final void markAttached(boolean attached)
@@ -3592,7 +3592,7 @@
/**
* Components are allowed to reject behavior modifiers.
- *
+ *
* @param behavior
* @return False, if the component should not apply this behavior
*/
@@ -3610,7 +3610,7 @@
/**
* If true, all attribute modifiers will be ignored
- *
+ *
* @return True, if attribute modifiers are to be ignored
*/
protected final boolean isIgnoreAttributeModifier()
@@ -3643,7 +3643,7 @@
* <p>
* If you need to get notification when page is taken out of Session (before calling the event
* listener), you can use the {@link Page#onPageAttached()} method.
- *
+ *
* @deprecated
*/
protected final void onAttach()
@@ -3656,11 +3656,11 @@
* <p>
* *NOTE* If you override this, you *must* call super.onBeforeRender() within your
* implementation.
- *
+ *
* Because this method is responsible for cascading {@link #onBeforeRender()} call to its
* children it is strongly recommended that super call is made at the end of the override.
* </p>
- *
+ *
* @see Component#callOnBeforeRenderIfNotVisible()
*/
protected void onBeforeRender()
@@ -3673,10 +3673,10 @@
/**
* Override this method if you want onBeforeRender to be called even when your component is not
* visible. default this returns false.
- *
+ *
* @return boolean, if true then onBeforeRender is called even for none visible components,
* default false.
- *
+ *
* @see Component#onBeforeRender()
*/
protected boolean callOnBeforeRenderIfNotVisible()
@@ -3695,7 +3695,7 @@
/**
* Processes the component tag.
- *
+ *
* @param tag
* Tag to modify
*/
@@ -3713,7 +3713,7 @@
/**
* Processes the body.
- *
+ *
* @param markupStream
* The markup stream
* @param openTag
@@ -3725,11 +3725,11 @@
/**
* Called to allow a component to detach resources after use.
- *
+ *
* Overrides of this method MUST call the super implementation, the most logical place to do
* this is the last line of the override method.
- *
- *
+ *
+ *
*/
protected void onDetach()
{
@@ -3762,7 +3762,7 @@
/**
* Implementation that renders this component.
- *
+ *
* @since Wicket 1.2
* @param markupStream
*/
@@ -3772,7 +3772,7 @@
* Writes a simple tag out to the response stream. Any components that might be referenced by
* the tag are ignored. Also undertakes any tag attribute modifications if they have been added
* to the component.
- *
+ *
* @param tag
* The tag to write
*/
@@ -3823,7 +3823,7 @@
/**
* Replaces the body with the given one.
- *
+ *
* @param markupStream
* The markup stream to replace the tag body in
* @param tag
@@ -3888,7 +3888,7 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT USE IT!
- *
+ *
* @param flag
* The flag to set
* @param set
@@ -3908,7 +3908,7 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT USE IT!
- *
+ *
* @param flag
* The flag to set
* @param set
@@ -3921,7 +3921,7 @@
/**
* If true, all attribute modifiers will be ignored
- *
+ *
* @param ignore
* If true, all attribute modifiers will be ignored
* @return This
@@ -3935,10 +3935,10 @@
/**
* The markup stream will be assigned to the component at the beginning of the component render
* phase. It is temporary working variable only.
- *
+ *
* @see #findMarkupStream()
* @see MarkupContainer#getMarkupStream()
- *
+ *
* @param markupStream
* The current markup stream which should be applied by the component to render
* itself
@@ -3973,7 +3973,7 @@
/**
* Gets the component at the given path.
- *
+ *
* @param path
* Path to component
* @return The component at the path
@@ -3993,7 +3993,7 @@
/**
* Checks whether or not this component has a markup id value generated, whether it is automatic
* or user defined
- *
+ *
* @return true if this component has a markup id value generated
*/
final boolean hasMarkupIdMetaData()
@@ -4044,7 +4044,7 @@
/**
* Renders the close tag at the current position in the markup stream.
- *
+ *
* @param markupStream
* the markup stream
* @param openTag
@@ -4094,7 +4094,7 @@
/**
* Sets the id of this component. This method is private because the only time a component's id
* can be set is in its constructor.
- *
+ *
* @param id
* The non-null id of this component
*/
@@ -4109,7 +4109,7 @@
/**
* Sets the parent of a component.
- *
+ *
* @param parent
* The parent container
*/
@@ -4124,7 +4124,7 @@
/**
* Sets the render allowed flag.
- *
+ *
* @param renderAllowed
*/
final void setRenderAllowed(boolean renderAllowed)
@@ -4134,7 +4134,7 @@
/**
* Sets the render allowed flag.
- *
+ *
* Visit all this page's children (overridden in MarkupContainer) to check rendering
* authorization, as appropriate. We set any result; positive or negative as a temporary boolean
* in the components, and when a authorization exception is thrown it will block the rendering
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataEntry.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataEntry.java?rev=628800&r1=628799&r2=628800&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataEntry.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataEntry.java Mon Feb 18 08:33:16 2008
@@ -16,11 +16,10 @@
*/
package org.apache.wicket;
-import java.io.Serializable;
/**
* Class used for holding meta data entries.
- *
+ *
* @author Jonathan Locke
*/
final class MetaDataEntry implements IClusterable
@@ -29,16 +28,16 @@
final MetaDataKey key;
- Serializable object;
+ Object object;
/**
* Construct.
- *
+ *
* @param key
* meta data key
* @param object
*/
- public MetaDataEntry(MetaDataKey key, Serializable object)
+ public MetaDataEntry(MetaDataKey key, Object object)
{
this.key = key;
this.object = object;
@@ -50,6 +49,6 @@
public String toString()
{
return key + "=" + object.getClass().getName() + "@" +
- Integer.toHexString(object.hashCode());
+ Integer.toHexString(object.hashCode());
}
}
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java?rev=628800&r1=628799&r2=628800&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java Mon Feb 18 08:33:16 2008
@@ -16,8 +16,6 @@
*/
package org.apache.wicket;
-import java.io.Serializable;
-
import org.apache.wicket.util.lang.Classes;
/**
@@ -27,7 +25,7 @@
* subtype. That subtype is used to test for identity when looking for the metadata because actual
* object identity would suffer from problems under serialization. So, the correct way to declare a
* MetaDataKey is like this: public static MetaDataKey ROLE = new MetaDataKey(Role.class) { }
- *
+ *
* @author Jonathan Locke
*/
public abstract class MetaDataKey implements IClusterable
@@ -39,13 +37,13 @@
/**
* Constructor.
- *
+ *
* @param type
* The type of value stored under this key
*/
public MetaDataKey(final Class type)
{
- this.typeName = type.getName();
+ typeName = type.getName();
}
/**
@@ -61,7 +59,7 @@
* Array of metadata to search
* @return The entry value
*/
- Serializable get(MetaDataEntry[] metaData)
+ Object get(MetaDataEntry[] metaData)
{
if (metaData != null)
{
@@ -84,7 +82,7 @@
* The object to set, null to remove
* @return Any new metadata array (if it was reallocated)
*/
- MetaDataEntry[] set(MetaDataEntry[] metaData, final Serializable object)
+ MetaDataEntry[] set(MetaDataEntry[] metaData, final Object object)
{
checkType(object);
boolean set = false;
@@ -142,7 +140,7 @@
/**
* Checks the type of the given object against the type for this metadata key.
- *
+ *
* @param object
* The object to check
* @throws IllegalArgumentException
@@ -154,7 +152,7 @@
if (object != null && !clazz.isAssignableFrom(object.getClass()))
{
throw new IllegalArgumentException("MetaDataKey " + getClass() +
- " requires argument of " + clazz + ", not " + object.getClass());
+ " requires argument of " + clazz + ", not " + object.getClass());
}
}
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java?rev=628800&r1=628799&r2=628800&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/PageMap.java Mon Feb 18 08:33:16 2008
@@ -33,7 +33,7 @@
{
/**
* Visitor interface for visiting entries in this map
- *
+ *
* @author Jonathan Locke
*/
static interface IVisitor
@@ -55,7 +55,7 @@
* Gets a page map for a page map name, automatically creating the page map if it does not
* exist. If you do not want the pagemap to be automatically created, you can call
* Session.pageMapForName(pageMapName, false).
- *
+ *
* @param pageMapName
* The name of the page map to get
* @return The PageMap with the given name from the current session
@@ -77,7 +77,7 @@
/**
* Constructor
- *
+ *
* @param name
* The name of this page map
*/
@@ -115,7 +115,7 @@
/**
* Redirects to any intercept page previously specified by a call to redirectToInterceptPage.
- *
+ *
* @return True if an original destination was redirected to
* @see PageMap#redirectToInterceptPage(Page)
*/
@@ -217,7 +217,7 @@
* is saved exactly as it was requested for future use by continueToOriginalDestination(); Only
* use this method when you plan to continue to the current URL at some later time; otherwise
* just use setResponsePage or, when you are in a constructor, redirectTo.
- *
+ *
* @param pageClazz
* The page clazz to temporarily redirect to
*/
@@ -233,7 +233,7 @@
* is saved exactly as it was requested for future use by continueToOriginalDestination(); Only
* use this method when you plan to continue to the current URL at some later time; otherwise
* just use setResponsePage or, when you are in a constructor, redirectTo.
- *
+ *
* @param page
* The page to temporarily redirect to
*/
@@ -351,7 +351,7 @@
* Sets the metadata for this PageMap using the given key. If the metadata object is not of the
* correct type for the metadata key, an IllegalArgumentException will be thrown. For
* information on creating MetaDataKeys, see {@link MetaDataKey}.
- *
+ *
* @param key
* The singleton key for the metadata
* @param object
@@ -366,7 +366,7 @@
/**
* Gets metadata for this PageMap using the given key.
- *
+ *
* @param key
* The key for the data
* @return The metadata or null of no metadata was found for the given key
@@ -374,7 +374,7 @@
*/
public final Serializable getMetaData(final MetaDataKey key)
{
- return key.get(metaData);
+ return (Serializable)key.get(metaData);
}
/**
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/RequestCycle.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/RequestCycle.java?rev=628800&r1=628799&r2=628800&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/RequestCycle.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/RequestCycle.java Mon Feb 18 08:33:16 2008
@@ -16,7 +16,6 @@
*/
package org.apache.wicket;
-import java.io.Serializable;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
@@ -154,7 +153,7 @@
* their way with continueToOriginalDestination(). These methods could also be useful in
* "interstitial" advertising or other kinds of "intercepts".
* <p>
- *
+ *
* @author Jonathan Locke
* @author Eelco Hillenius
* @author Igor Vaynberg (ivaynberg)
@@ -190,7 +189,7 @@
/**
* Gets request cycle for calling thread.
- *
+ *
* @return Request cycle for calling thread
*/
public static RequestCycle get()
@@ -203,7 +202,7 @@
* as the request cycle is set to current for you in the constructor. However, if you have a <a
* href="http://issues.apache.org/jira/browse/WICKET-366">very special need</a> to set it to
* something else, you can expose this method.
- *
+ *
* @param cycle
* The request cycle to set current
*/
@@ -268,7 +267,7 @@
/**
* Constructor. This instance will be set as the current one for this thread.
- *
+ *
* @param application
* The application
* @param request
@@ -291,7 +290,7 @@
/**
* Gets the application object.
- *
+ *
* @return Application interface
*/
public final Application getApplication()
@@ -303,7 +302,7 @@
* Gets the new agent info object for this session. This method calls
* {@link Session#getClientInfo()}, which may or may not cache the client info object and
* typically calls {@link #newClientInfo()} when no client info object was cached.
- *
+ *
* @return the agent info object based on this request
*/
public final ClientInfo getClientInfo()
@@ -315,7 +314,7 @@
* Get the original response the request was create with. Access may be necessary with the
* response has temporarily being replaced but your components requires access to lets say the
* cookie methods of a WebResponse.
- *
+ *
* @return The original response object.
*/
public final Response getOriginalResponse()
@@ -326,7 +325,7 @@
/**
* Any set page parameters. Typically only available when a request to a bookmarkable page with
* a {@link Page#Page(PageParameters)} constructor was made.
- *
+ *
* @return the page parameters or null
*/
public final PageParameters getPageParameters()
@@ -336,14 +335,14 @@
/**
* Gets the processor for delegated request cycle handling.
- *
+ *
* @return the processor for delegated request cycle handling
*/
public abstract IRequestCycleProcessor getProcessor();
/**
* Gets whether the page for this request should be redirected.
- *
+ *
* @return whether the page for this request should be redirected
* @deprecated Use {@link #isRedirect()} instead
*/
@@ -354,7 +353,7 @@
/**
* Gets the request.
- *
+ *
* @return Request object
*/
public final Request getRequest()
@@ -364,7 +363,7 @@
/**
* Gets the current request target. May be null.
- *
+ *
* @return the current request target, null if none was set yet.
*/
public final IRequestTarget getRequestTarget()
@@ -374,7 +373,7 @@
/**
* Gets the response.
- *
+ *
* @return Response object
*/
public final Response getResponse()
@@ -385,7 +384,7 @@
/**
* Gets the page that is to be rendered for this request in case the last set request target is
* of type {@link PageRequestTarget}.
- *
+ *
* @return the page or null
*/
public final Page getResponsePage()
@@ -405,7 +404,7 @@
/**
* Gets the page class that is to be instantiated and rendered for this request in case the last
* set request target is of type {@link BookmarkablePageRequestTarget}.
- *
+ *
* @return the page class or null
*/
public final Class getResponsePageClass()
@@ -420,7 +419,7 @@
/**
* Gets the session.
- *
+ *
* @return Session object
*/
public final Session getSession()
@@ -442,7 +441,7 @@
/**
* Gets whether the page for this request should be redirected.
- *
+ *
* @return whether the page for this request should be redirected
*/
public boolean isRedirect()
@@ -454,7 +453,7 @@
* Template method that is called when a runtime exception is thrown, just before the actual
* handling of the runtime exception. This is called by
* {@link AbstractRequestCycleProcessor#respond(RuntimeException, RequestCycle)}.
- *
+ *
* @param page
* Any page context where the exception was thrown
* @param e
@@ -471,7 +470,7 @@
* <p>
* Redirects browser to the given page. Don't use this method directly, but use
* {@link #setResponsePage(Page)} instead.
- *
+ *
* @param page
* The page to redirect to
*/
@@ -501,7 +500,7 @@
* <p>
* NOTE: This method is typically only used for testing purposes.
* </p>
- *
+ *
* @param component
* to be re-rendered
*/
@@ -521,7 +520,7 @@
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL IT.
* <p>
* Responds to a request with the request target.
- *
+ *
* @param target
* request target
*/
@@ -541,7 +540,7 @@
/**
* Permit clients like testers to examine feedback messages after processing.
- *
+ *
* @param automaticallyClearFeedbackMessages
* True to automatically detach request cycle at end of processing
*/
@@ -554,7 +553,7 @@
/**
* Sets whether the page for this request should be redirected.
- *
+ *
* @param redirect
* True if the page for this request cycle should be redirected to rather than
* directly rendered.
@@ -575,7 +574,7 @@
/**
* Sets the request target as the current.
- *
+ *
* @param requestTarget
* the request target to set as current
*/
@@ -616,7 +615,7 @@
/**
* Sets response.
- *
+ *
* @param response
* The response
* @return the original response
@@ -630,7 +629,7 @@
/**
* Attempts to return name of current page map
- *
+ *
* @return
*/
private String getCurrentPageMap()
@@ -654,7 +653,7 @@
/**
* Convenience method that sets page class as the response. This will generate a redirect to the
* page with a bookmarkable url
- *
+ *
* @param pageClass
* The page class to render as a response
*/
@@ -665,7 +664,7 @@
/**
* Sets the page class with optionally the page parameters as the render target of this request.
- *
+ *
* @param pageClass
* The page class to render as a response
* @param pageParameters
@@ -679,7 +678,7 @@
/**
* Sets the page class with optionally the page parameters and page map name as the render
* target of this request.
- *
+ *
* @param pageClass
* The page class to render as a response
* @param pageParameters
@@ -697,7 +696,7 @@
/**
* Sets the page as the render target of this request.
- *
+ *
* @param page
* The page to render as a response
*/
@@ -738,7 +737,7 @@
/**
* Returns an encoded URL that references the given request target and clears the
* urlForNewWindowEncoding flag.
- *
+ *
* @param requestTarget
* the request target to reference
* @return a URL that references the given request target
@@ -754,7 +753,7 @@
* Returns a bookmarkable URL that references a given page class using a given set of page
* parameters. Since the URL which is returned contains all information necessary to instantiate
* and render the page, it can be stored in a user's browser as a stable bookmark.
- *
+ *
* @param pageClass
* Class of page
* @param parameters
@@ -771,7 +770,7 @@
* URL is requested from the server at a later time, the interface on the behavior will be
* called. A URL returned by this method will not be stable across sessions and cannot be
* bookmarked by a user.
- *
+ *
* @param component
* The component to reference
* @param behaviour
@@ -812,7 +811,7 @@
* Returns a URL that references a given interface on a component. When the URL is requested
* from the server at a later time, the interface will be called. A URL returned by this method
* will not be stable across sessions and cannot be bookmarked by a user.
- *
+ *
* @param component
* The component to reference
* @param listener
@@ -893,7 +892,7 @@
/**
* Url encodes value using UTF-8
- *
+ *
* @param value
* value to encode
* @return encoded value
@@ -907,7 +906,7 @@
* Returns a URL that references a given interface on a component. When the URL is requested
* from the server at a later time, the interface will be called. A URL returned by this method
* will not be stable across sessions and cannot be bookmarked by a user.
- *
+ *
* @param component
* The component to reference
* @param listener
@@ -924,7 +923,7 @@
* Returns a bookmarkable URL that references a given page class using a given set of page
* parameters. Since the URL which is returned contains all information necessary to instantiate
* and render the page, it can be stored in a user's browser as a stable bookmark.
- *
+ *
* @param pageMap
* Pagemap to use. If null is passed the default page map will be used
* @param pageClass
@@ -943,7 +942,7 @@
/**
* Returns a URL that references the given request target.
- *
+ *
* @param requestTarget
* the request target to reference
* @return a URL that references the given request target
@@ -957,7 +956,7 @@
* Returns a URL that references the given page. It also {@link Session#touch(Page) touches} the
* page in the session so that it is put in the front of the page stack. Use this method only if
* you plan to use it the next request.
- *
+ *
* @param page
* The page
* @return The url pointing to the provided page
@@ -971,7 +970,7 @@
/**
* Returns a URL that references a shared resource through the provided resource reference.
- *
+ *
* @param resourceReference
* The resource reference where a url must be generated for.
* @return The url for the shared resource
@@ -983,7 +982,7 @@
/**
* Returns a URL that references a shared resource through the provided resource reference.
- *
+ *
* @param resourceReference
* The resource reference where a url must be generated for.
* @param parameters
@@ -1183,7 +1182,7 @@
/**
* Safe version of {@link #getProcessor()} that throws an exception when the processor is null.
- *
+ *
* @return the request processor
*/
private final IRequestCycleProcessor safeGetRequestProcessor()
@@ -1373,7 +1372,7 @@
/**
* Possibly set the page parameters. Only set when the request is resolving and the parameters
* are passed into a page.
- *
+ *
* @param parameters
* the parameters to set
*/
@@ -1390,7 +1389,7 @@
* will result in displaying a user facing error page. Clients can override this method in case
* they want to customize logging. NOT called for
* {@link PageExpiredException page expired exceptions}.
- *
+ *
* @param e
* the runtime exception
*/
@@ -1404,7 +1403,7 @@
* by the session and the returned object will be cached in the session after that call; we can
* expect the client to stay the same for the whole session, and implementations of
* {@link #newClientInfo()} might be relatively expensive.
- *
+ *
* @return the agent info object based on this request
*/
protected abstract ClientInfo newClientInfo();
@@ -1432,7 +1431,7 @@
* Sets the metadata for this request cycle using the given key. If the metadata object is not
* of the correct type for the metadata key, an IllegalArgumentException will be thrown. For
* information on creating MetaDataKeys, see {@link MetaDataKey}.
- *
+ *
* @param key
* The singleton key for the metadata
* @param object
@@ -1440,20 +1439,20 @@
* @throws IllegalArgumentException
* @see MetaDataKey
*/
- public final void setMetaData(final MetaDataKey key, final Serializable object)
+ public final void setMetaData(final MetaDataKey key, final Object object)
{
metaData = key.set(metaData, object);
}
/**
* Gets metadata for this request cycle using the given key.
- *
+ *
* @param key
* The key for the data
* @return The metadata or null if no metadata was found for the given key
* @see MetaDataKey
*/
- public final Serializable getMetaData(final MetaDataKey key)
+ public final Object getMetaData(final MetaDataKey key)
{
return key.get(metaData);
}
Modified: wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java
URL: http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java?rev=628800&r1=628799&r2=628800&view=diff
==============================================================================
--- wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java (original)
+++ wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/Session.java Mon Feb 18 08:33:16 2008
@@ -49,29 +49,29 @@
* <ul>
* <li><b>Access via RequestCycle </b>- The Session for a {@link RequestCycle} can be retrieved by
* calling {@link RequestCycle#getSession()}.
- *
+ *
* <li><b>Access via Component </b>- If a RequestCycle object is not available, the Session can be
* retrieved for a Component by calling {@link Component#getSession()}. As currently implemented,
* each Component does not itself have a reference to the session that contains it. However, the
* Page component at the root of the containment hierarchy does have a reference to the Session that
* holds the Page. So {@link Component#getSession()} traverses the component hierarchy to the root
* Page and then calls {@link Page#getSession()}.
- *
+ *
* <li><b>Access via Thread Local </b>- In the odd case where neither a RequestCycle nor a
* Component is available, the currently active Session for the calling thread can be retrieved by
* calling the static method Session.get(). This last form should only be used if the first two
* forms cannot be used since thread local access can involve a potentially more expensive hash map
* lookup.
- *
+ *
* <li><b>Locale </b>- A session has a Locale property to support localization. The Locale for a
* session can be set by calling {@link Session#setLocale(Locale)}. The Locale for a Session
* determines how localized resources are found and loaded.
- *
+ *
* <li><b>Style </b>- Besides having an appearance based on locale, resources can also have
* different looks in the same locale (a.k.a. "skins"). The style for a session determines the look
* which is used within the appropriate locale. The session style ("skin") can be set with the
* setStyle() method.
- *
+ *
* <li><b>Resource Loading </b>- Based on the Session locale and style, searching for resources
* occurs in the following order (where sourcePath is set via the ApplicationSettings object for the
* current Application, and style and locale are Session properties):
@@ -85,7 +85,7 @@
* 7. [classPath]/name[style].[extension] <br>
* 8. [classPath]/name.[extension] <br>
* </ul>
- *
+ *
* <li><b>Session Properties </b>- Arbitrary objects can be attached to a Session by installing a
* session factory on your Application class which creates custom Session subclasses that have
* typesafe properties specific to the application (see {@link Application} for details). To
@@ -93,20 +93,20 @@
* provided. In a clustered environment, you should take care to call the dirty() method when you
* change a property on your own. This way the session will be reset again in the http session so
* that the http session knows the session is changed.
- *
+ *
* <li><b>Class Resolver </b>- Sessions have a class resolver ( {@link IClassResolver})
* implementation that is used to locate classes for components such as pages.
- *
+ *
* <li><b>Page Factory </b>- A pluggable implementation of {@link IPageFactory} is used to
* instantiate pages for the session.
- *
+ *
* <li><b>Removal </b>- Pages can be removed from the Session forcibly by calling remove(Page) or
* removeAll(), although such an action should rarely be necessary.
- *
+ *
* <li><b>Flash Messages</b>- Flash messages are messages that are stored in session and are
* removed after they are displayed to the user. Session acts as a store for these messages because
* they can last across requests.
- *
+ *
* @author Jonathan Locke
* @author Eelco Hillenius
* @author Igor Vaynberg (ivaynberg)
@@ -115,7 +115,7 @@
{
/**
* Visitor interface for visiting page maps
- *
+ *
* @author Jonathan Locke
*/
public static interface IPageMapVisitor
@@ -182,7 +182,7 @@
/**
* Checks if the <code>Session</code> threadlocal is set in this thread
- *
+ *
* @return true if {@link Session#get()} can return the instance of session, false otherwise
*/
public static boolean exists()
@@ -195,7 +195,7 @@
* new one and attach it when none could be located and sets it as the current instance for this
* thread. Typically, clients never touch this method, but rather use {@link Session#get()},
* which does the locating implicitly when not yet set as a thread local.
- *
+ *
* @return The session for the client of this request or a new, unbound
*/
public static final Session findOrCreate()
@@ -239,7 +239,7 @@
/**
* Get the session for the calling thread.
- *
+ *
* @return Session for calling thread
*/
public static Session get()
@@ -256,7 +256,7 @@
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL IT.
* <p>
* Sets session for calling thread. Also triggers {@link #attach()} being called.
- *
+ *
* @param session
* The session
*/
@@ -277,7 +277,7 @@
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL IT.
* <p>
* Clears the session for calling thread.
- *
+ *
*/
public static void unset()
{
@@ -347,7 +347,7 @@
/**
* Constructor. Note that {@link RequestCycle} is not available until this constructor returns.
- *
+ *
* @param request
* The current request
*/
@@ -362,9 +362,9 @@
/**
* Constructor. Note that {@link RequestCycle} is not available until this constructor returns.
- *
+ *
* @deprecated Use #Session(Request)
- *
+ *
* @param application
* The application that this is a session of
* @param request
@@ -444,7 +444,7 @@
/**
* Automatically creates a page map, giving it a session unique name.
- *
+ *
* @return Created PageMap
*/
public final IPageMap createAutoPageMap()
@@ -465,9 +465,9 @@
/**
* With this call you can create a pagemap name but not create the pagemap itself already. It
* will give the first pagemap name where it couldn't find a current pagemap for.
- *
+ *
* It will return the same name if you call it 2 times in a row.
- *
+ *
* @return The created pagemap name
*/
public synchronized final String createAutoPageMapName()
@@ -503,7 +503,7 @@
/**
* Registers an error feedback message for this session
- *
+ *
* @param message
* The feedback message
*/
@@ -514,7 +514,7 @@
/**
* Get the application that is currently working with this session.
- *
+ *
* @return Returns the application.
*/
public final Application getApplication()
@@ -545,7 +545,7 @@
* on the current request when no client info object was set yet, and then caches the returned
* object; we can expect the client to stay the same for the whole session, and implementations
* of {@link RequestCycle#newClientInfo()} might be relatively expensive.
- *
+ *
* @return the client info object based on this request
*/
public ClientInfo getClientInfo()
@@ -567,7 +567,7 @@
/**
* Gets feedback messages stored in session
- *
+ *
* @return unmodifiable list of feedback messages
*/
public final FeedbackMessages getFeedbackMessages()
@@ -578,7 +578,7 @@
/**
* Gets the unique id for this session from the underlying SessionStore. May be null if a
* concrete session is not yet created.
- *
+ *
* @return The unique id for this session or null if it is a temporary session
*/
public final String getId()
@@ -598,7 +598,7 @@
/**
* Get this session's locale.
- *
+ *
* @return This session's locale
*/
public Locale getLocale()
@@ -608,7 +608,7 @@
/**
* Gets metadata for this session using the given key.
- *
+ *
* @param key
* The key for the data
* @return The metadata
@@ -616,13 +616,13 @@
*/
public final Serializable getMetaData(final MetaDataKey key)
{
- return key.get(metaData);
+ return (Serializable)key.get(metaData);
}
/**
* When a regular request on certain page with certain version is being processed, we don't
* allow ajax requests to same page and version.
- *
+ *
* @param lockedRequestCycle
* @return whether current request is valid or should be discarded
*/
@@ -633,10 +633,10 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL IT.
- *
+ *
* Returns the page with given id and versionNumber. It keeps asking pageMaps for given page
* until it finds one that contains it.
- *
+ *
* @param pageId
* @param versionNumber
* @return The page of that pageid and version, null if not found
@@ -665,9 +665,9 @@
/**
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL IT.
- *
+ *
* Get the page for the given path.
- *
+ *
* @param pageMapName
* The name of the page map where the page is
* @param path
@@ -821,7 +821,7 @@
/**
* Get the style (see {@link org.apache.wicket.Session}).
- *
+ *
* @return Returns the style (see {@link org.apache.wicket.Session})
*/
public final String getStyle()
@@ -831,7 +831,7 @@
/**
* Registers an informational feedback message for this session
- *
+ *
* @param message
* The feedback message
*/
@@ -864,9 +864,9 @@
/**
* Whether the session is invalid now, or will be invalidated by the end of the request. Clients
* should rarely need to use this method if ever.
- *
+ *
* @return Whether the session is invalid when the current request is done
- *
+ *
* @see #invalidate()
* @see #invalidateNow()
*/
@@ -879,7 +879,7 @@
* Whether this session is temporary. A Wicket application can operate in a session-less mode as
* long as stateless pages are used. If this session object is temporary, it will not be
* available on a next request.
- *
+ *
* @return Whether this session is temporary (which is the same as it's id being null)
*/
public final boolean isTemporary()
@@ -889,7 +889,7 @@
/**
* Creates a new page map with a given name
- *
+ *
* @param name
* The name for the new page map
* @return The newly created page map
@@ -916,7 +916,7 @@
/**
* Gets a page map for the given name, automatically creating it if need be.
- *
+ *
* @param pageMapName
* Name of page map, or null for default page map
* @param autoCreate
@@ -958,7 +958,7 @@
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL IT.
* <p>
* Sets the application that this session is associated with.
- *
+ *
* @param application
* The application
*/
@@ -971,7 +971,7 @@
* <p>
* Sets the client info object for this session. This will only work when
* {@link #getClientInfo()} is not overridden.
- *
+ *
* @param clientInfo
* the client info object
*/
@@ -984,7 +984,7 @@
/**
* Set the locale for this session.
- *
+ *
* @param locale
* New locale
*/
@@ -1002,7 +1002,7 @@
* Sets the metadata for this session using the given key. If the metadata object is not of the
* correct type for the metadata key, an IllegalArgumentException will be thrown. For
* information on creating MetaDataKeys, see {@link MetaDataKey}.
- *
+ *
* @param key
* The singleton key for the metadata
* @param object
@@ -1017,7 +1017,7 @@
/**
* Set the style (see {@link org.apache.wicket.Session}).
- *
+ *
* @param style
* The style to set.
* @return the Session object
@@ -1034,9 +1034,9 @@
* <p>
* The page will be 'touched' in the session. If it wasn't added yet to the pagemap, it will be
* added to the page map else it will set this page to the front.
- *
+ *
* If another page was removed because of this it will be cleaned up.
- *
+ *
* @param page
*/
public final void touch(Page page)
@@ -1061,7 +1061,7 @@
* THIS METHOD IS NOT PART OF THE WICKET PUBLIC API. DO NOT CALL IT.
* <p>
* This method will remove a page that was previously added via touch()
- *
+ *
* @param page
*/
public final void untouch(Page page)
@@ -1091,7 +1091,7 @@
/**
* Registers a warning feedback message for this session
- *
+ *
* @param message
* The feedback message
*/
@@ -1102,10 +1102,10 @@
/**
* Adds a feedback message to the list of messages
- *
+ *
* @param message
* @param level
- *
+ *
*/
private void addFeedbackMessage(String message, int level)
{
@@ -1152,7 +1152,7 @@
/**
* Gets the attribute value with the given name
- *
+ *
* @param name
* The name of the attribute to store
* @return The value of the attribute
@@ -1202,7 +1202,7 @@
/**
* Gets the session store.
- *
+ *
* @return the session store
*/
protected ISessionStore getSessionStore()
@@ -1216,7 +1216,7 @@
/**
* Removes the attribute with the given name.
- *
+ *
* @param name
* the name of the attribute to remove
*/
@@ -1241,7 +1241,7 @@
/**
* Adds or replaces the attribute with the given name and value.
- *
+ *
* @param name
* The name of the attribute
* @param value
@@ -1294,7 +1294,7 @@
/**
* NOT TO BE CALLED BY FRAMEWORK USERS.
- *
+ *
* @deprecated obsolete method (was meant for internal book keeping really). Clients should
* override {@link #detach()} instead.
*/
@@ -1356,7 +1356,7 @@
/**
* INTERNAL API. The request cycle when detached will call this.
- *
+ *
*/
final void requestDetached()
{
@@ -1467,7 +1467,7 @@
/**
* Retrieves the next available session-unique value
- *
+ *
* @return session-unique value
*/
public synchronized int nextSequenceValue()