org.apache.tapestry5.ioc.internal.services
Class MasterObjectProviderImpl

java.lang.Object
  extended by org.apache.tapestry5.ioc.internal.services.MasterObjectProviderImpl
All Implemented Interfaces:
MasterObjectProvider

@PreventServiceDecoration
public class MasterObjectProviderImpl
extends Object
implements MasterObjectProvider


Constructor Summary
MasterObjectProviderImpl(List<ObjectProvider> configuration, OperationTracker tracker)
           
 
Method Summary
<T> T
provide(Class<T> objectType, AnnotationProvider annotationProvider, ObjectLocator locator, boolean required)
          Provides an object based on an expression.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MasterObjectProviderImpl

public MasterObjectProviderImpl(List<ObjectProvider> configuration,
                                OperationTracker tracker)
Method Detail

provide

public <T> T provide(Class<T> objectType,
                     AnnotationProvider annotationProvider,
                     ObjectLocator locator,
                     boolean required)
Description copied from interface: MasterObjectProvider
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.

When the value is required and no ObjectProvider provided a non-null value, then ObjectLocator.getService(Class, Class[]) is invoked (with no marker annotations), to provide a uniquely matching service, or throw a failure exception if no single service can be found.

Specified by:
provide in interface MasterObjectProvider
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
required - if true (normal case) a value must be provided; if false then it is allowed for no ObjectProvider to provide a value, and this method may return null to indicate the failure
Returns:
the requested object, or null if this object provider can not supply an object


Copyright © 2003-2012 The Apache Software Foundation.