You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (JIRA)" <de...@tapestry.apache.org> on 2008/09/09 02:27:44 UTC

[jira] Updated: (TAPESTRY-2554) When decorating a service using a decorate method, the underlying service (or interceptor) should be available as a parameter of the service type, not just java.lang.Object

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

Howard M. Lewis Ship updated TAPESTRY-2554:
-------------------------------------------

    Summary: When decorating a service using a decorate method, the underlying service (or interceptor) should be available as a parameter of the service type, not just java.lang.Object  (was: When decorating a service using a decorate method, the underlying service (or interceptor) should be available as a parameter of the service type, not java.lang.Object)

> When decorating a service using a decorate method, the underlying service (or interceptor) should be available as a parameter of the service type, not just java.lang.Object
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: TAPESTRY-2554
>                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2554
>             Project: Tapestry
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.0.13
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>            Priority: Minor
>
> Currently, the delegate object (the underlying service, or the next filter in the chain) must be present as a parameter of the decorating method, as type Object.
> This makes sense for more general decorations, as Java Generics will likely be used:
> public <T> T decorateXYZ(Class<T> serviceInterface, T service) { ... }
> The service object will, after erasure, be java.lang.Object.
> However, when decorating a specific service, where the service interface is known a-priori, the delegate must still be passed as java.lang.Object.
> Possibly, it will be necessary to use an annotation to be clear that the parameter in question is the delegate, and not a service injection.

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


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org