Class ServiceAnnotationObjectProvider

java.lang.Object
org.apache.tapestry5.internal.services.ServiceAnnotationObjectProvider
All Implemented Interfaces:
ObjectProvider

public class ServiceAnnotationObjectProvider extends Object implements ObjectProvider
Adds support for the Service annotation (which can be applied to fields or parameters), which is used to disambiguate injection when multiple services implement the same service interface.
  • Constructor Details

  • Method Details

    • provide

      public <T> T provide(Class<T> objectType, AnnotationProvider annotationProvider, ObjectLocator locator)
      Description copied from interface: ObjectProvider
      Provides an object based on an expression. The process of providing objects occurs within a particular context, which will typically be a service builder method, service contributor method, or service decorator method. The locator parameter provides access to the services visible to that context.
      Specified by:
      provide in interface ObjectProvider
      Parameters:
      objectType - the expected object type
      annotationProvider - provides access to annotations (typically, the field or parameter to which an injection-related annotation is attached); annotations on the field or parameter may also be used when resolving the desired object
      locator - locator for the context in which the provider is being used
      Returns:
      the requested object, or null if this object provider can not supply an object