@ComponentSpecification public interface PropertyFactoryManager
PropertyFactory
variants are registered.Modifier and Type | Method and Description |
---|---|
<V,PROPERTY extends ReadableProperty<V>> |
create(Class<PROPERTY> propertyType,
GenericType<V> valueType,
boolean polymorphic,
String name,
Bean bean,
AbstractValidator<? super V> validator) |
default <V,PROPERTY extends ReadableProperty<V>> |
getFactory(Class<PROPERTY> propertyType,
Class<? extends V> valueType,
boolean polymorphic) |
<V,PROPERTY extends ReadableProperty<V>> |
getFactoryForPropertyType(Class<PROPERTY> propertyType) |
<V> PropertyFactory<V,? extends ReadableProperty<V>> |
getFactoryForValueType(Class<? extends V> valueType,
boolean polymorphic) |
default <V,PROPERTY extends ReadableProperty<V>> |
getRequiredFactory(Class<PROPERTY> propertyType,
Class<V> valueType,
boolean polymorphic) |
<V,PROPERTY extends ReadableProperty<V>> PropertyFactory<V,? extends PROPERTY> getFactoryForPropertyType(Class<PROPERTY> propertyType)
V
- the generic type of the property value
.PROPERTY
- the generic type of the property
.propertyType
- the Class
reflecting the property to create. May be the
readable interface
,
writable interface
, or the
implementation
.PropertyFactory
or null
if no such factory is registered.<V> PropertyFactory<V,? extends ReadableProperty<V>> getFactoryForValueType(Class<? extends V> valueType, boolean polymorphic)
V
- the generic type of the property value
.valueType
- the Class
reflecting the property value
.polymorphic
- - true
if also sub-types
of
value classes
should be accepted as valueType
, false
otherwise (more efficient).PropertyFactory
or null
if no such factory is registered.PropertyFactory.getValueClass()
default <V,PROPERTY extends ReadableProperty<V>> PropertyFactory<V,? extends PROPERTY> getFactory(Class<PROPERTY> propertyType, Class<? extends V> valueType, boolean polymorphic)
V
- the generic type of the property value
.PROPERTY
- the generic type of the property
.propertyType
- the Class
reflecting the property to create. May be the
readable interface
,
writable interface
, or the
implementation
.valueType
- the Class
reflecting the property value
.polymorphic
- - see getFactoryForValueType(Class, boolean)
.PropertyFactory
or null
if no such factory is registered.default <V,PROPERTY extends ReadableProperty<V>> PropertyFactory<V,? extends PROPERTY> getRequiredFactory(Class<PROPERTY> propertyType, Class<V> valueType, boolean polymorphic)
V
- the generic type of the property value
.PROPERTY
- the generic type of the property
.propertyType
- the Class
reflecting the property to create. May be the
readable interface
,
writable interface
, or the
implementation
.valueType
- the Class
reflecting the property value
.polymorphic
- - see getFactoryForValueType(Class, boolean)
.PropertyFactory
or null
if no such factory is registered.<V,PROPERTY extends ReadableProperty<V>> PROPERTY create(Class<PROPERTY> propertyType, GenericType<V> valueType, boolean polymorphic, String name, Bean bean, AbstractValidator<? super V> validator) throws ObjectNotFoundException
V
- the generic type of the property value
.PROPERTY
- the generic type of the property
to create.propertyType
- the Class
reflecting the property to create. May be the
readable interface
,
writable interface
, or the
implementation
.valueType
- is the GenericType
of the value. Only needed for generic properties such as
GenericProperty
or
ListProperty
. Can be null
if the generic value type is
already bound and should be ignored then.polymorphic
- - see getFactoryForValueType(Class, boolean)
.name
- the property name
.bean
- the property bean
.validator
- the validator
used for validation
.
May be null
.ObjectNotFoundException
- if no PropertyFactory
was found
for propertyType
.Copyright © 2001–2016 mmm-Team. All rights reserved.