Class NamedConstructorArgs

java.lang.Object
org.apache.xbean.spring.context.impl.NamedConstructorArgs

public class NamedConstructorArgs extends Object
NamedConstructorArgs is a BeanFactoryPostProcessor that converts property declarations into indexed constructor args based on the the constructor parameter names annotation. This process first selects a constructor and then fills in the constructor arguments from the properties defined in the bean definition. If a property is not defined in the bean definition, first the defaultValues map is checked for a value and if a value is not present a Java default value is provided for the constructor argument (e.g. numbers are assigned 0 and objects are assigned null).
Since:
2.0
Version:
$Id$
Author:
Dain Sundstrom
  • Constructor Details

    • NamedConstructorArgs

      public NamedConstructorArgs()
  • Method Details

    • getDefaultValues

      public List getDefaultValues()
      Gets the default values that are assigned to constructor arguments without a defined value.
      Returns:
      the default values that are assigned to constructor arguments without a defined value
    • setDefaultValues

      public void setDefaultValues(List defaultValues)
      Sets the default values that are assigned to constructor arguments without a defined value.
      Parameters:
      defaultValues - the values that are assigned to constructor arguments without a defined value
    • addDefaultValue

      public void addDefaultValue(String name, Class type, Object value)
      Adds a default value for a property with the specified name and type.
      Parameters:
      name - the name of the property
      type - the type of the property
      value - the default value for a property with the specified name and type
    • processParameters

      public void processParameters(org.springframework.beans.factory.config.BeanDefinitionHolder definitionHolder, MappingMetaData metadata) throws org.springframework.beans.BeansException
      Throws:
      org.springframework.beans.BeansException