Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-1955

Documentation on ServiceBinder#bind(Class<T> implementationClass) is wrong/lacks extra information

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Invalid
    • 5.3.3
    • None
    • tapestry-core

    Description

      The documentation on the above mentioned method states that

      > Defines a service in terms of an implementation class, without a service interface. In this case, the service
      > will not be proxiable (proxying requires a service interface) and

      {@link ServiceDef#getServiceInterface()}

      will
      > return the implementation class. In this situation, the service will not be proxied; it will be instantiated
      > fully on first reference (ignoring its scope, if any) and will not be decorated.

      In tapestry-core InternalModule I found usages of that interface, where you bind an interface class.
      Looking at the code, the implementation will try to resolve the implementation class and then bind
      it using the standard bind(Class<T> serviceInterface, Class<? extends T> implementationClass) method.

      Bound as such, the interface can both be proxied and decorated.

      Attachments

        Activity

          People

            Unassigned Unassigned
            carsten.klein Carsten Klein
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: