The Spring Framework

org.springframework.beans.factory
Interface SmartFactoryBean

All Superinterfaces:
FactoryBean
All Known Implementing Classes:
BeanReferenceFactoryBean

public interface SmartFactoryBean
extends FactoryBean

Extension of the FactoryBean interface. Implementations may indicate whether they always return independent instances, for the case where their FactoryBean.isSingleton() implementation returning false does not clearly indicate independent instances.

Plain FactoryBean implementations which do not implement this extended interface are simply assumed to always return independent instances if their FactoryBean.isSingleton() implementation returns false.

NOTE: This interface is a special purpose interface, mainly for internal use within the framework. In general, application-provided FactoryBeans should simply implement the plain FactoryBean interface.

Since:
2.0.3
Author:
Juergen Hoeller
See Also:
isPrototype(), FactoryBean.isSingleton()

Method Summary
 boolean isPrototype()
          Is the object managed by this factory a prototype?
 
Methods inherited from interface org.springframework.beans.factory.FactoryBean
getObject, getObjectType, isSingleton
 

Method Detail

isPrototype

boolean isPrototype()
Is the object managed by this factory a prototype? That is, will FactoryBean.getObject() always return an independent instance?

The prototype status of the FactoryBean itself will generally be provided by the owning BeanFactory; usually, it has to be defined as singleton there.

This method is supposed to strictly check for independent instances; it should not return true for scoped objects or other kinds of non-singleton, non-independent objects. For this reason, this is not simply the inverted form of FactoryBean.isSingleton().

Returns:
if the exposed object is a prototype
See Also:
FactoryBean.getObject(), FactoryBean.isSingleton()

The Spring Framework

Copyright © 2002-2007 The Spring Framework.