Package org.springframework.beans.factory.config

# Class ListFactoryBean

java.lang.Object
org.springframework.beans.factory.config.AbstractFactoryBean<List<Object>>
org.springframework.beans.factory.config.ListFactoryBean

All Implemented Interfaces:
  `Aware`, `BeanClassLoaderAware`, `BeanFactoryAware`, `DisposableBean`, `FactoryBean<List<Object>>`, `InitializingBean`

public class ListFactoryBean extends AbstractFactoryBean<List<Object>>
Simple factory for shared List instances. Allows for central setup of Lists via the "list" element in XML bean definitions.

Since:
  09.12.2003
Author:
  Juergen Hoeller
See Also:
  - `SetFactoryBean`
  - `MapFactoryBean`

## Field Summary

### Fields inherited from class org.springframework.beans.factory.config.AbstractFactoryBean

`logger`

### Fields inherited from interface org.springframework.beans.factory.FactoryBean

`OBJECT_TYPE_ATTRIBUTE`

## Constructor Summary

Constructors
Constructor
Description
`ListFactoryBean()`

## Method Summary

Modifier and Type
Method
Description
`protected List<Object>`
`createInstance()`
Template method that subclasses must override to construct the object returned by this factory.
`Class<List>`
`getObjectType()`
This abstract method declaration mirrors the method in the FactoryBean interface, for a consistent offering of abstract template methods.
`void`
`setSourceList(List<?> sourceList)`
Set the source List, typically populated via XML "list" elements.
`void`
`setTargetListClass(Class<? extends List> targetListClass)`
Set the class to use for the target List.

### Methods inherited from class org.springframework.beans.factory.config.AbstractFactoryBean

`afterPropertiesSet, destroy, destroyInstance, getBeanFactory, getBeanTypeConverter, getEarlySingletonInterfaces, getObject, isSingleton, setBeanClassLoader, setBeanFactory, setSingleton`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ListFactoryBean

public ListFactoryBean()

## Method Details

### setSourceList

public void setSourceList(List<?> sourceList)
Set the source List, typically populated via XML "list" elements.

### setTargetListClass

public void setTargetListClass(@Nullable Class<? extends List> targetListClass)
Set the class to use for the target List. Can be populated with a fully qualified class name when defined in a Spring application context.

Default is a `java.util.ArrayList`.

See Also:
  - `ArrayList`

### getObjectType

public Class<List> getObjectType()
Description copied from class: `AbstractFactoryBean`
This abstract method declaration mirrors the method in the FactoryBean interface, for a consistent offering of abstract template methods.

Specified by:
  `getObjectType` in interface `FactoryBean<List<Object>>`
Specified by:
  `getObjectType` in class `AbstractFactoryBean<List<Object>>`
Returns:
  the type of object that this FactoryBean creates, or `null` if not known at the time of the call
See Also:
  - `FactoryBean.getObjectType()`

### createInstance

protected List<Object> createInstance()
Description copied from class: `AbstractFactoryBean`
Template method that subclasses must override to construct the object returned by this factory.

Invoked on initialization of this FactoryBean in case of a singleton; else, on each `AbstractFactoryBean.getObject()` call.

Specified by:
  `createInstance` in class `AbstractFactoryBean<List<Object>>`
Returns:
  the object returned by this factory
See Also:
  - `AbstractFactoryBean.getObject()`