Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| The Spring Framework
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.springframework.beans.factory.support
Class ChildBeanDefinition

    java.lang.Object
      org.springframework.core.AttributeAccessorSupport
          org.springframework.beans.factory.support.AbstractBeanDefinition
              org.springframework.beans.factory.support.ChildBeanDefinition

All Implemented Interfaces:
  Serializable, BeanMetadataElement, BeanDefinition, AttributeAccessor

    public class ChildBeanDefinition

extends AbstractBeanDefinition

Bean definition for beans which inherit settings from their parent.

Will use the bean class of the parent if none specified, but can also override it. In the latter case, the child bean class must be compatible with the parent, i.e. accept the parent's property values and constructor argument values, if any.

A child bean definition will inherit constructor argument values, property values and method overrides from the parent, with the option to add new values. If init method, destroy method and/or static factory method are specified, they will override the corresponding parent settings.

The remaining settings will always be taken from the child definition: depends on, autowire mode, dependency check, singleton, lazy init.

Author:
  Rod Johnson, Juergen Hoeller
See Also:
  `RootBeanDefinition`, Serialized Form

Field Summary

Fields inherited from class org.springframework.beans.factory.support.AbstractBeanDefinition
`AUTOWIRE_AUTODETECT, AUTOWIRE_BY_NAME, AUTOWIRE_BY_TYPE, AUTOWIRE_CONSTRUCTOR, AUTOWIRE_NO, DEPENDENCY_CHECK_ALL, DEPENDENCY_CHECK_NONE, DEPENDENCY_CHECK_OBJECTS, DEPENDENCY_CHECK_SIMPLE`

Fields inherited from interface org.springframework.beans.factory.config.BeanDefinition
`ROLE_APPLICATION, ROLE_INFRASTRUCTURE, ROLE_SUPPORT, SCOPE_PROTOTYPE, SCOPE_SINGLETON`

Constructor Summary
`ChildBeanDefinition(ChildBeanDefinition original)` Create a new ChildBeanDefinition as deep copy of the given bean definition.
`ChildBeanDefinition(String parentName)` Create a new ChildBeanDefinition for the given parent, to be configured through its bean properties and configuration methods.
`ChildBeanDefinition(String parentName, Class beanClass, ConstructorArgumentValues cargs, MutablePropertyValues pvs)` Create a new ChildBeanDefinition for the given parent, providing constructor arguments and property values.
`ChildBeanDefinition(String parentName, ConstructorArgumentValues cargs, MutablePropertyValues pvs)` Create a new ChildBeanDefinition for the given parent.
`ChildBeanDefinition(String parentName, MutablePropertyValues pvs)` Create a new ChildBeanDefinition for the given parent.
`ChildBeanDefinition(String parentName, String beanClassName, ConstructorArgumentValues cargs, MutablePropertyValues pvs)` Create a new ChildBeanDefinition for the given parent, providing constructor arguments and property values.

Method Summary
`boolean` | `equals(Object other)`
`String` | `getParentName()` Return the name of the parent definition of this bean definition.
`int` | `hashCode()`
`String` | `toString()`
`void` | `validate()` Validate this bean definition.

Methods inherited from class org.springframework.beans.factory.support.AbstractBeanDefinition
`getAutowireMode, getBeanClass, getBeanClassName, getConstructorArgumentValues, getDependencyCheck, getDependsOn, getDestroyMethodName, getFactoryBeanName, getFactoryMethodName, getInitMethodName, getMethodOverrides, getPropertyValues, getResolvedAutowireMode, getResourceDescription, getRole, getScope, getSource, hasBeanClass, hasConstructorArgumentValues, isAbstract, isAutowireCandidate, isEnforceDestroyMethod, isEnforceInitMethod, isLazyInit, isPrototype, isSingleton, isSynthetic, overrideFrom, prepareMethodOverride, prepareMethodOverrides, resolveBeanClass, setAbstract, setAutowireCandidate, setAutowireMode, setBeanClass, setBeanClassName, setConstructorArgumentValues, setDependencyCheck, setDependsOn, setDestroyMethodName, setEnforceDestroyMethod, setEnforceInitMethod, setFactoryBeanName, setFactoryMethodName, setInitMethodName, setLazyInit, setMethodOverrides, setPropertyValues, setResourceDescription, setRole, setScope, setSingleton, setSource, setSynthetic`

Methods inherited from class org.springframework.core.AttributeAccessorSupport
`attributeNames, copyAttributesFrom, getAttribute, hasAttribute, removeAttribute, setAttribute`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.springframework.core.AttributeAccessor
`attributeNames, getAttribute, hasAttribute, removeAttribute, setAttribute`

Constructor Detail

### ChildBeanDefinition

    public ChildBeanDefinition(String parentName)

  Create a new ChildBeanDefinition for the given parent, to be configured through its bean properties and configuration methods.

  Parameters:
    `parentName` - the name of the parent bean
  See Also:
    `AbstractBeanDefinition.setBeanClass(java.lang.Class)`, `AbstractBeanDefinition.setBeanClassName(java.lang.String)`, `AbstractBeanDefinition.setSingleton(boolean)`, `AbstractBeanDefinition.setAutowireMode(int)`, `AbstractBeanDefinition.setDependencyCheck(int)`, `AbstractBeanDefinition.setConstructorArgumentValues(org.springframework.beans.factory.config.ConstructorArgumentValues)`, `AbstractBeanDefinition.setPropertyValues(org.springframework.beans.MutablePropertyValues)`

### ChildBeanDefinition

    public ChildBeanDefinition(String parentName,
                               MutablePropertyValues pvs)

  Create a new ChildBeanDefinition for the given parent.

  Parameters:
    `parentName` - the name of the parent bean
    `pvs` - the additional property values of the child

### ChildBeanDefinition

    public ChildBeanDefinition(String parentName,
                               ConstructorArgumentValues cargs,
                               MutablePropertyValues pvs)

  Create a new ChildBeanDefinition for the given parent.

  Parameters:
    `parentName` - the name of the parent bean
    `cargs` - the constructor argument values to apply
    `pvs` - the additional property values of the child

### ChildBeanDefinition

    public ChildBeanDefinition(String parentName,
                               Class beanClass,
                               ConstructorArgumentValues cargs,
                               MutablePropertyValues pvs)

  Create a new ChildBeanDefinition for the given parent, providing constructor arguments and property values.

  Parameters:
    `parentName` - the name of the parent bean
    `beanClass` - the class of the bean to instantiate
    `cargs` - the constructor argument values to apply
    `pvs` - the property values to apply

### ChildBeanDefinition

    public ChildBeanDefinition(String parentName,
                               String beanClassName,
                               ConstructorArgumentValues cargs,
                               MutablePropertyValues pvs)

  Create a new ChildBeanDefinition for the given parent, providing constructor arguments and property values. Takes a bean class name to avoid eager loading of the bean class.

  Parameters:
    `parentName` - the name of the parent bean
    `beanClassName` - the name of the class to instantiate
    `cargs` - the constructor argument values to apply
    `pvs` - the property values to apply

### ChildBeanDefinition

    public ChildBeanDefinition(ChildBeanDefinition original)

  Create a new ChildBeanDefinition as deep copy of the given bean definition.

  Parameters:
    `original` - the original bean definition to copy from

Method Detail

### getParentName

    public String getParentName()

  Return the name of the parent definition of this bean definition.

### validate

    public void validate()
                  throws BeanDefinitionValidationException

  Description copied from class: `AbstractBeanDefinition`
  Validate this bean definition.

  Overrides:
    `validate` in class `AbstractBeanDefinition`
  Throws:
    `BeanDefinitionValidationException` - in case of validation failure

### equals

    public boolean equals(Object other)

  Overrides:
    `equals` in class `AbstractBeanDefinition`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `AbstractBeanDefinition`

### toString

    public String toString()

  Overrides:
    `toString` in class `AbstractBeanDefinition`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| The Spring Framework
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2007 The Spring Framework.