org.apache.tapestry5.internal.spring
Class SpringBeanServiceDef

java.lang.Object
  extended by org.apache.tapestry5.internal.spring.SpringBeanServiceDef
All Implemented Interfaces:
ServiceDef, ServiceDef2

public class SpringBeanServiceDef
extends Object
implements ServiceDef2


Constructor Summary
SpringBeanServiceDef(String beanName, org.springframework.context.ApplicationContext context)
           
 
Method Summary
 ObjectCreator createServiceCreator(ServiceBuilderResources resources)
          Returns an ObjectCreator that can create the core service implementation.
 Set<Class> getMarkers()
          Returns an optional set of marker annotations.
 String getServiceId()
          Returns the service id, derived from the method name or the unqualified service interface name.
 Class getServiceInterface()
          Returns the service interface associated with this service.
 String getServiceScope()
          Returns the lifecycle defined for the service.
 boolean isEagerLoad()
          Returns true if the service should be eagerly loaded at Registry startup.
 boolean isPreventDecoration()
          Returns true if the service should not be decorated.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpringBeanServiceDef

public SpringBeanServiceDef(String beanName,
                            org.springframework.context.ApplicationContext context)
Method Detail

isPreventDecoration

public boolean isPreventDecoration()
Description copied from interface: ServiceDef2
Returns true if the service should not be decorated. Most services allow decoration, unless the PreventServiceDecoration annotation is present.

Specified by:
isPreventDecoration in interface ServiceDef2

createServiceCreator

public ObjectCreator createServiceCreator(ServiceBuilderResources resources)
Description copied from interface: ServiceDef
Returns an ObjectCreator that can create the core service implementation.

Specified by:
createServiceCreator in interface ServiceDef
Parameters:
resources - used to resolve dependencies of the service, or access its configuration
Returns:
an object that can (later) be used to instantiate the service itself

getServiceId

public String getServiceId()
Description copied from interface: ServiceDef
Returns the service id, derived from the method name or the unqualified service interface name. Service ids must be unique among all services in all modules. Service ids are used in a heavy handed way to support ultimate disambiguation, but their primary purpose is to support service contribution methods.

Specified by:
getServiceId in interface ServiceDef

getMarkers

public Set<Class> getMarkers()
Description copied from interface: ServiceDef
Returns an optional set of marker annotations. Marker annotations are used to disambiguate services; the combination of a marker annotation and a service type is expected to be unique. The annotation is placed on the field or method/constructor parameter and the service is located by combining the marker with service type (the parameter or field type).

Specified by:
getMarkers in interface ServiceDef
Returns:
the marker annotations for the service (possibly empty), including any default marker annotations from the containing module.

getServiceInterface

public Class getServiceInterface()
Description copied from interface: ServiceDef
Returns the service interface associated with this service. This is the interface exposed to the outside world, as well as the one used to build proxies. In cases where the service is not defined in terms of an interface, this will return the actual implementation class of the service. Services without a true service interface are not proxied, which has a number of ramifications (such as losing lazy instantiation capabilities and other more interesting lifecycles).

Specified by:
getServiceInterface in interface ServiceDef

getServiceScope

public String getServiceScope()
Description copied from interface: ServiceDef
Returns the lifecycle defined for the service. This is indicated by adding a Scope annotation to the service builder method for the service.

Services that are not proxied will ignore their scope; such services are always treated as singletons.

Specified by:
getServiceScope in interface ServiceDef
See Also:
ServiceLifecycle, ServiceLifecycleSource

isEagerLoad

public boolean isEagerLoad()
Description copied from interface: ServiceDef
Returns true if the service should be eagerly loaded at Registry startup.

Specified by:
isEagerLoad in interface ServiceDef
See Also:
EagerLoad


Copyright © 2003-2012 The Apache Software Foundation.