Tapestry 5
  1. Tapestry 5
  2. TAP5-76

Provide decorators service matching based on annotations

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 5.0.15
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      It would be very useful if we could match services for decoration using the services' annotations. In spite of documentation saying it can be done, it can't:

      Tapestry IoC documentation:

      "Note: It is not possible to decorate the services of the TapestryIOCModule."

      "Note: Another idea will be other ways of matching services: base on inheritance of the service interface and/or based on the presence of particular class annotations on the service interface. None of this has been implemented yet, and can readily be accompllished inside the decorator method (which will return null if it decides the service doesn't need decoration)."

      If you write a @Match("*"), Tapestry-IoC throws an exception telling that you cannot decorate internal Tapestry-IoC services. Therefore, there's no way to select services to decorate using only annotations: we need to match services based on name patterns in all situations.

      A suggestions is the creation of a @MatchAnnotation() annotation.

        Activity

        Thiago H. de Paula Figueiredo created issue -
        Howard M. Lewis Ship made changes -
        Field Original Value New Value
        Fix Version/s 5.1 [ 12312964 ]
        Howard M. Lewis Ship made changes -
        Component/s tapestry-ioc [ 12311284 ]
        Key TAPESTRY-1874 TAP5-76
        Issue Type New Feature [ 2 ] Bug [ 1 ]
        Affects Version/s 5.0.6 [ 12312544 ]
        Fix Version/s 5.1 [ 12312964 ]
        Project Tapestry [ 10573 ] Tapestry 5 [ 12310833 ]
        Howard M. Lewis Ship made changes -
        Affects Version/s 5.0.15 [ 12313429 ]
        Howard M. Lewis Ship made changes -
        Issue Type Bug [ 1 ] Improvement [ 4 ]
        Hide
        Massimo Lusetti added a comment -

        Please open a new one for 5.3 if this still applicable

        Show
        Massimo Lusetti added a comment - Please open a new one for 5.3 if this still applicable
        Massimo Lusetti made changes -
        Status Open [ 1 ] Closed [ 6 ]
        Fix Version/s 5.3 [ 12316024 ]
        Resolution Won't Fix [ 2 ]
        Hide
        Howard M. Lewis Ship added a comment -

        MARKER: INVALID FIX RELEASE

        Show
        Howard M. Lewis Ship added a comment - MARKER: INVALID FIX RELEASE
        Howard M. Lewis Ship made changes -
        Resolution Won't Fix [ 2 ]
        Status Closed [ 6 ] Reopened [ 4 ]
        Assignee Howard M. Lewis Ship [ hlship ]
        Howard M. Lewis Ship made changes -
        Fix Version/s 5.3 [ 12316024 ]
        Hide
        Howard M. Lewis Ship added a comment -

        Due to limitations in JIRA, the resolution on some issues had to be changed, as part of removing the fix release from the issue. Only issues that are actually fixed should have a fix release.

        Show
        Howard M. Lewis Ship added a comment - Due to limitations in JIRA, the resolution on some issues had to be changed, as part of removing the fix release from the issue. Only issues that are actually fixed should have a fix release.
        Howard M. Lewis Ship made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Unresolved [ 9 ]
        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Closed Closed
        1380d 9h 28m 1 Massimo Lusetti 11/Aug/11 22:38
        Closed Closed Reopened Reopened
        103d 21h 18m 1 Howard M. Lewis Ship 23/Nov/11 18:57
        Reopened Reopened Resolved Resolved
        9m 31s 1 Howard M. Lewis Ship 23/Nov/11 19:06

          People

          • Assignee:
            Howard M. Lewis Ship
            Reporter:
            Thiago H. de Paula Figueiredo
          • Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development