Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.tapestry5.internal.services
Class ComponentEventLinkEncoderImpl

    java.lang.Object
      org.apache.tapestry5.internal.services.ComponentEventLinkEncoderImpl

All Implemented Interfaces:
  ComponentEventLinkEncoder

    public class ComponentEventLinkEncoderImpl

extends java.lang.Object
implements ComponentEventLinkEncoder

Constructor Summary
`ComponentEventLinkEncoderImpl(ComponentClassResolver componentClassResolver, ContextPathEncoder contextPathEncoder, LocalizationSetter localizationSetter, Request request, Response response, RequestSecurityManager requestSecurityManager, BaseURLSource baseURLSource, PersistentLocale persistentLocale, boolean encodeLocaleIntoPath, java.lang.String applicationFolder, MetaDataLocator metaDataLocator, ClientWhitelist clientWhitelist)`

Method Summary
`void` | `appendContext(boolean seperatorRequired, EventContext context, java.lang.StringBuilder builder)`
`Link` | `createComponentEventLink(ComponentEventRequestParameters parameters, boolean forForm)` Creates a link that encapsulates a component event request, including `PersistentLocale` (if set).
`Link` | `createPageRenderLink(PageRenderRequestParameters parameters)` Creates a Link that encapsulates a page render request, including activation context and `PersistentLocale` (if set).
`ComponentEventRequestParameters` | `decodeComponentEventRequest(Request request)` Checks the request, primarily the path, to determine the if the request is a component event request.
`PageRenderRequestParameters` | `decodePageRenderRequest(Request request)` Checks the request, primarily the path, to determine the if the request is a page render request.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ComponentEventLinkEncoderImpl

    public ComponentEventLinkEncoderImpl(ComponentClassResolver componentClassResolver,
                                         ContextPathEncoder contextPathEncoder,
                                         LocalizationSetter localizationSetter,
                                         Request request,
                                         Response response,
                                         RequestSecurityManager requestSecurityManager,
                                         BaseURLSource baseURLSource,
                                         PersistentLocale persistentLocale,
                                         @Symbol(value="tapestry.encode-locale-into-path")
                                         boolean encodeLocaleIntoPath,
                                         @Symbol(value="tapestry.application-folder")
                                         java.lang.String applicationFolder,
                                         MetaDataLocator metaDataLocator,
                                         ClientWhitelist clientWhitelist)

Method Detail

### createPageRenderLink

    public Link createPageRenderLink(PageRenderRequestParameters parameters)

  Description copied from interface: `ComponentEventLinkEncoder`
  Creates a Link that encapsulates a page render request, including activation context and `PersistentLocale` (if set). Passes the resulting Link through the `PageRenderLinkTransformer` chain of command, returning the result.

  Specified by:
    `createPageRenderLink` in interface `ComponentEventLinkEncoder`
  Parameters:
    `parameters` - defining page to render and context
  Returns:
    link for the page render

### createComponentEventLink

    public Link createComponentEventLink(ComponentEventRequestParameters parameters,
                                         boolean forForm)

  Description copied from interface: `ComponentEventLinkEncoder`
  Creates a link that encapsulates a component event request, including `PersistentLocale` (if set).

  Forms:

  - /context/pagename:eventname -- event on the page, no action context
  - /context/pagename:eventname/foo/bar -- event on the page with action context "foo", "bar"
  - /context/pagename.foo.bar -- event on component foo.bar within the page, default event, no action context
  - /context/pagename.foo.bar/baz.gnu -- event on component foo.bar within the page, default event, with action context "baz", "gnu"
  - /context/pagename.bar.baz:eventname/foo/gnu -- event on component bar.baz within the page with action context "foo" , "gnu"

  The persistent locale may be placed in between the context name and the page name, i.e., "/context/fr/SomePage".

  In many cases the context name is blank, so the path begins with a "/" and then the locale name or page name.

  The page name portion may itself consist of a series of folder names, i.e., "admin/user/create". The context portion isn't the concern of this code, since `Request.getPath()` will already have stripped that off. We can act as if the context is always "/" (the path always starts with a slash).

  Passes the resulting Link through the `ComponentEventLinkTransformer` chain of command, returning the result.

  Specified by:
    `createComponentEventLink` in interface `ComponentEventLinkEncoder`
  Parameters:
    `parameters` - defining page, component, activation context and other details
    `forForm` - true if the event link will trigger a form submission
  Returns:
    link for the component event

### decodeComponentEventRequest

    public ComponentEventRequestParameters decodeComponentEventRequest(Request request)

  Description copied from interface: `ComponentEventLinkEncoder`
  Checks the request, primarily the path, to determine the if the request is a component event request. As a side-effect (necessary for historical reasons), responsible for setting the locale for the thread, including the `PersistentLocale` ... but only if the locale is a component event.

  Specified by:
    `decodeComponentEventRequest` in interface `ComponentEventLinkEncoder`
  Parameters:
    `request` - incoming request
  Returns:
    component event request details, if a component event request

### decodePageRenderRequest

    public PageRenderRequestParameters decodePageRenderRequest(Request request)

  Description copied from interface: `ComponentEventLinkEncoder`
  Checks the request, primarily the path, to determine the if the request is a page render request. As a side-effect (necessary for historical reasons), responsible for setting the locale for the thread, including the `PersistentLocale` ... but only if the request is a page render.

  Specified by:
    `decodePageRenderRequest` in interface `ComponentEventLinkEncoder`
  Parameters:
    `request` - incoming request
  Returns:
    page render request details, if a page render request

### appendContext

    public void appendContext(boolean seperatorRequired,
                              EventContext context,
                              java.lang.StringBuilder builder)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2003-2012 The Apache Software Foundation.