Class RequestCycle

    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void detach()
      Detaches RequestCycle state.
      <T extends org.apache.wicket.request.IRequestHandler>
      java.util.Optional<T>
      find​(java.lang.Class<T> type)
      Finds a IRequestHandler which is either the currently executing handler or is scheduled to be executed.
      static RequestCycle get()
      Returns request cycle associated with current thread.
      org.apache.wicket.request.IRequestHandler getActiveRequestHandler()  
      protected int getExceptionRetryCount()  
      RequestCycleListenerCollection getListeners()  
      <T> T getMetaData​(MetaDataKey<T> key)
      Gets metadata for this request cycle using the given key.
      org.apache.wicket.request.Response getOriginalResponse()
      Get the original response the request was created with.
      org.apache.wicket.request.Request getRequest()  
      org.apache.wicket.request.IRequestHandler getRequestHandlerScheduledAfterCurrent()  
      org.apache.wicket.request.Response getResponse()
      long getStartTime()  
      org.apache.wicket.request.UrlRenderer getUrlRenderer()
      Returns UrlRenderer for this RequestCycle.
      protected org.apache.wicket.request.IRequestHandler handleException​(java.lang.Exception e)
      Return IRequestHandler for the given exception.
      <C extends Page>
      org.apache.wicket.request.Url
      mapUrlFor​(java.lang.Class<C> pageClass, org.apache.wicket.request.mapper.parameter.PageParameters parameters)
      Returns a bookmarkable URL that references a given page class using a given set of page parameters.
      org.apache.wicket.request.Url mapUrlFor​(org.apache.wicket.request.IRequestHandler handler)
      Returns URL for the request handler or null if the handler couldn't have been encoded.
      org.apache.wicket.request.Url mapUrlFor​(ResourceReference reference, org.apache.wicket.request.mapper.parameter.PageParameters params)
      Returns a Url for the resource reference
      protected org.apache.wicket.request.UrlRenderer newUrlRenderer()  
      protected void onBeginRequest()
      Called when the request cycle object is beginning its response
      void onDetach()
      Called after request processing is complete, usually takes care of detaching state
      protected void onEndRequest()
      Called when the request cycle object has finished its response
      void onEvent​(IEvent<?> event)
      Called when an event is sent to this sink
      boolean processRequest()
      Processes the request.
      boolean processRequestAndDetach()
      Convenience method that processes the request and detaches the RequestCycle.
      void replaceAllRequestHandlers​(org.apache.wicket.request.IRequestHandler handler)  
      protected org.apache.wicket.request.IRequestHandler resolveRequestHandler()
      Resolves current request to a IRequestHandler.
      void scheduleRequestHandlerAfterCurrent​(org.apache.wicket.request.IRequestHandler handler)
      <T> RequestCycle setMetaData​(MetaDataKey<T> key, T object)
      Sets the metadata for this request cycle using the given key.
      void setRequest​(org.apache.wicket.request.Request request)
      INTERNAL This method is for internal Wicket use.
      org.apache.wicket.request.Response setResponse​(org.apache.wicket.request.Response response)
      void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass)
      Convenience method for setting next page to be rendered.
      void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass, RenderPageRequestHandler.RedirectPolicy redirectPolicy)
      Convenience method for setting next page to be rendered.
      void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass, org.apache.wicket.request.mapper.parameter.PageParameters parameters)
      Convenience method for setting next page to be rendered.
      void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass, org.apache.wicket.request.mapper.parameter.PageParameters parameters, RenderPageRequestHandler.RedirectPolicy redirectPolicy)
      Convenience method for setting next page to be rendered.
      void setResponsePage​(IRequestablePage page)
      Convenience method for setting next page to be rendered.
      <C extends Page>
      java.lang.CharSequence
      urlFor​(java.lang.Class<C> pageClass, org.apache.wicket.request.mapper.parameter.PageParameters parameters)
      Returns a rendered bookmarkable URL that references a given page class using a given set of page parameters.
      java.lang.CharSequence urlFor​(org.apache.wicket.request.IRequestHandler handler)
      Returns the rendered URL for the request handler or null if the handler couldn't have been rendered.
      java.lang.CharSequence urlFor​(ResourceReference reference, org.apache.wicket.request.mapper.parameter.PageParameters params)
      Returns a rendered Url for the resource reference
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RequestCycle

        public RequestCycle​(RequestCycleContext context)
        Construct.
        Parameters:
        context -
    • Method Detail

      • get

        public static RequestCycle get()
        Returns request cycle associated with current thread.
        Returns:
        request cycle instance or null if no request cycle is associated with current thread.
      • newUrlRenderer

        protected org.apache.wicket.request.UrlRenderer newUrlRenderer()
        Returns:
        a new url renderer
      • getOriginalResponse

        public org.apache.wicket.request.Response getOriginalResponse()
        Get the original response the request was created with. Access to the original response may be necessary if the response has been temporarily replaced but the components require methods from original response (i.e. cookie methods of WebResponse, etc).
        Returns:
        The original response object.
      • getUrlRenderer

        public final org.apache.wicket.request.UrlRenderer getUrlRenderer()
        Returns UrlRenderer for this RequestCycle.
        Specified by:
        getUrlRenderer in interface org.apache.wicket.request.IRequestCycle
        Returns:
        UrlRenderer instance.
      • resolveRequestHandler

        protected org.apache.wicket.request.IRequestHandler resolveRequestHandler()
        Resolves current request to a IRequestHandler.
        Returns:
        RequestHandler instance
      • getExceptionRetryCount

        protected int getExceptionRetryCount()
        Returns:
        How many times will Wicket attempt to render the exception request handler before giving up.
      • processRequestAndDetach

        public boolean processRequestAndDetach()
        Convenience method that processes the request and detaches the RequestCycle.
        Returns:
        true if the request resolved to a Wicket request, false otherwise.
      • processRequest

        public boolean processRequest()
        Processes the request.
        Returns:
        true if the request resolved to a Wicket request, false otherwise.
      • handleException

        protected org.apache.wicket.request.IRequestHandler handleException​(java.lang.Exception e)
        Return IRequestHandler for the given exception.
        Parameters:
        e - exception to handle
        Returns:
        RequestHandler instance
        See Also:
        IRequestCycleListener.onException(RequestCycle, Exception), IExceptionMapper.map(Exception)
      • getRequest

        public org.apache.wicket.request.Request getRequest()
        Specified by:
        getRequest in interface org.apache.wicket.request.IRequestCycle
        Returns:
        current request
      • setRequest

        public void setRequest​(org.apache.wicket.request.Request request)
        INTERNAL This method is for internal Wicket use. Do not call it yourself unless you know what you are doing.
        Parameters:
        request -
      • setMetaData

        public final <T> RequestCycle setMetaData​(MetaDataKey<T> key,
                                                  T object)
        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 MetaDataKey.
        Specified by:
        setMetaData in interface IMetadataContext<java.lang.Object,​RequestCycle>
        Type Parameters:
        T -
        Parameters:
        key - The singleton key for the metadata
        object - The metadata object
        Throws:
        java.lang.IllegalArgumentException
        See Also:
        MetaDataKey
      • getMetaData

        public final <T> T getMetaData​(MetaDataKey<T> key)
        Gets metadata for this request cycle using the given key.
        Specified by:
        getMetaData in interface IMetadataContext<java.lang.Object,​RequestCycle>
        Type Parameters:
        T - The type of the metadata
        Parameters:
        key - The key for the data
        Returns:
        The metadata or null if no metadata was found for the given key
        See Also:
        MetaDataKey
      • mapUrlFor

        public org.apache.wicket.request.Url mapUrlFor​(org.apache.wicket.request.IRequestHandler handler)
        Returns URL for the request handler or null if the handler couldn't have been encoded.

        Note: The produced URL is relative to the filter path. Application code most probably need URL relative to the currently used page, for this use urlFor(org.apache.wicket.request.IRequestHandler)

        Parameters:
        handler - the request handler for which to create a callback url
        Returns:
        Url instance or null
      • mapUrlFor

        public final <C extends Page> org.apache.wicket.request.Url mapUrlFor​(java.lang.Class<C> pageClass,
                                                                              org.apache.wicket.request.mapper.parameter.PageParameters parameters)
        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.

        Note: The produced URL is relative to the filter path. Application code most probably need URL relative to the currently used page, for this use urlFor(Class, org.apache.wicket.request.mapper.parameter.PageParameters)

        Type Parameters:
        C - The type of the page
        Parameters:
        pageClass - Class of page
        parameters - Parameters to page or null if none
        Returns:
        Bookmarkable URL to page
      • urlFor

        public final java.lang.CharSequence urlFor​(ResourceReference reference,
                                                   org.apache.wicket.request.mapper.parameter.PageParameters params)
        Returns a rendered Url for the resource reference
        Parameters:
        reference - resource reference
        params - parameters for the resource or null if none
        Returns:
        Url for the reference
      • urlFor

        public final <C extends Page> java.lang.CharSequence urlFor​(java.lang.Class<C> pageClass,
                                                                    org.apache.wicket.request.mapper.parameter.PageParameters parameters)
        Returns a rendered 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.
        Type Parameters:
        C -
        Parameters:
        pageClass - Class of page
        parameters - Parameters to page or null if none
        Returns:
        Bookmarkable URL to page
      • urlFor

        public java.lang.CharSequence urlFor​(org.apache.wicket.request.IRequestHandler handler)
        Returns the rendered URL for the request handler or null if the handler couldn't have been rendered.

        The resulting URL will be relative to current page.

        Parameters:
        handler -
        Returns:
        Url String or null
      • detach

        public final void detach()
        Detaches RequestCycle state. Called after request processing is complete
      • onDetach

        public void onDetach()
        Called after request processing is complete, usually takes care of detaching state
      • setResponsePage

        public void setResponsePage​(IRequestablePage page)
        Convenience method for setting next page to be rendered.
        Parameters:
        page -
      • setResponsePage

        public void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass)
        Convenience method for setting next page to be rendered.
        Parameters:
        pageClass - The class of the page to render
      • setResponsePage

        public void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass,
                                    RenderPageRequestHandler.RedirectPolicy redirectPolicy)
        Convenience method for setting next page to be rendered.
        Parameters:
        pageClass - The class of the page to render
        redirectPolicy - The policy to use when deciding whether to redirect or not
      • setResponsePage

        public void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass,
                                    org.apache.wicket.request.mapper.parameter.PageParameters parameters)
        Convenience method for setting next page to be rendered.
        Parameters:
        pageClass - The class of the page to render
        parameters - The query parameters for the page to be rendered
      • setResponsePage

        public void setResponsePage​(java.lang.Class<? extends IRequestablePage> pageClass,
                                    org.apache.wicket.request.mapper.parameter.PageParameters parameters,
                                    RenderPageRequestHandler.RedirectPolicy redirectPolicy)
        Convenience method for setting next page to be rendered.
        Parameters:
        pageClass - The class of the page to render
        parameters - The query parameters for the page to be rendered
        redirectPolicy - The policy to use when deciding whether to redirect or not
      • getStartTime

        public final long getStartTime()
        Returns:
        The start time for this request
      • onEvent

        public void onEvent​(IEvent<?> event)
        Called when an event is sent to this sink
        Specified by:
        onEvent in interface IEventSink
      • onBeginRequest

        protected void onBeginRequest()
        Called when the request cycle object is beginning its response
      • onEndRequest

        protected void onEndRequest()
        Called when the request cycle object has finished its response
      • getResponse

        public org.apache.wicket.request.Response getResponse()
        Specified by:
        getResponse in interface org.apache.wicket.request.IRequestCycle
      • setResponse

        public org.apache.wicket.request.Response setResponse​(org.apache.wicket.request.Response response)
        Specified by:
        setResponse in interface org.apache.wicket.request.IRequestCycle
      • scheduleRequestHandlerAfterCurrent

        public void scheduleRequestHandlerAfterCurrent​(org.apache.wicket.request.IRequestHandler handler)
        Specified by:
        scheduleRequestHandlerAfterCurrent in interface org.apache.wicket.request.IRequestCycle
      • getActiveRequestHandler

        public org.apache.wicket.request.IRequestHandler getActiveRequestHandler()
        Returns:
        active handler on executor
        See Also:
        RequestHandlerExecutor.getActive()
      • getRequestHandlerScheduledAfterCurrent

        public org.apache.wicket.request.IRequestHandler getRequestHandlerScheduledAfterCurrent()
        Returns:
        the handler scheduled to be executed after current by the executor
        See Also:
        RequestHandlerExecutor.next()
      • replaceAllRequestHandlers

        public void replaceAllRequestHandlers​(org.apache.wicket.request.IRequestHandler handler)
        Parameters:
        handler -
        See Also:
        RequestHandlerExecutor.replaceAll(IRequestHandler)
      • find

        public <T extends org.apache.wicket.request.IRequestHandler> java.util.Optional<T> find​(java.lang.Class<T> type)
        Finds a IRequestHandler which is either the currently executing handler or is scheduled to be executed.
        Returns:
        the found IRequestHandler or Optional.empty()