public final class CompositeBeanHelper
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private ExpressionEvaluator |
evaluator |
private ConfigurationListener |
listener |
private java.lang.ClassLoader |
loader |
private ConverterLookup |
lookup |
private static java.lang.reflect.Type[] |
NO_TYPES |
Constructor and Description |
---|
CompositeBeanHelper(ConverterLookup lookup,
java.lang.ClassLoader loader,
ExpressionEvaluator evaluator,
ConfigurationListener listener) |
Modifier and Type | Method and Description |
---|---|
private java.lang.Object |
convertProperty(java.lang.Class<?> beanType,
java.lang.Class<?> rawPropertyType,
java.lang.reflect.Type genericPropertyType,
PlexusConfiguration configuration) |
private static java.lang.reflect.Type |
expandType(java.lang.reflect.Type type) |
private static java.lang.reflect.Field |
findField(java.lang.Class<?> beanType,
java.lang.String fieldName) |
private static java.lang.reflect.Method |
findMethod(java.lang.Class<?> beanType,
java.lang.reflect.Type[] paramTypeHolder,
java.lang.String methodName) |
private static java.lang.reflect.Type[] |
getTypeArguments(java.lang.reflect.Type type) |
void |
setDefault(java.lang.Object bean,
java.lang.Object defaultValue,
PlexusConfiguration configuration)
Calls the default "set" method on the bean; re-converts the configuration if necessary.
|
private static void |
setField(java.lang.Object bean,
java.lang.reflect.Field field,
java.lang.Object value) |
void |
setProperty(java.lang.Object bean,
java.lang.String propertyName,
java.lang.Class<?> valueType,
PlexusConfiguration configuration)
Sets a property in the bean; looks for public setter/adder method before checking fields.
|
private static final java.lang.reflect.Type[] NO_TYPES
private final ConverterLookup lookup
private final java.lang.ClassLoader loader
private final ExpressionEvaluator evaluator
private final ConfigurationListener listener
public CompositeBeanHelper(ConverterLookup lookup, java.lang.ClassLoader loader, ExpressionEvaluator evaluator, ConfigurationListener listener)
public void setDefault(java.lang.Object bean, java.lang.Object defaultValue, PlexusConfiguration configuration) throws ComponentConfigurationException
bean
- The bean being configureddefaultValue
- The default valueconfiguration
- The configurationComponentConfigurationException
public void setProperty(java.lang.Object bean, java.lang.String propertyName, java.lang.Class<?> valueType, PlexusConfiguration configuration) throws ComponentConfigurationException
bean
- The bean being configuredpropertyName
- The property namevalueType
- The value typeconfiguration
- The configurationComponentConfigurationException
private java.lang.Object convertProperty(java.lang.Class<?> beanType, java.lang.Class<?> rawPropertyType, java.lang.reflect.Type genericPropertyType, PlexusConfiguration configuration) throws ComponentConfigurationException
ComponentConfigurationException
private static java.lang.reflect.Type[] getTypeArguments(java.lang.reflect.Type type)
private static java.lang.reflect.Type expandType(java.lang.reflect.Type type)
private static java.lang.reflect.Method findMethod(java.lang.Class<?> beanType, java.lang.reflect.Type[] paramTypeHolder, java.lang.String methodName)
private static java.lang.reflect.Field findField(java.lang.Class<?> beanType, java.lang.String fieldName)
private static void setField(java.lang.Object bean, java.lang.reflect.Field field, java.lang.Object value) throws java.lang.Exception
java.lang.Exception