V
- the generic type of the property value
.P
- the generic type of the property implementation
.@ComponentSpecification(plugin=true) public interface PropertyFactory<V,P extends ReadableProperty<V>>
property
type. You can directly
instantiate implementations such as StringProperty
. However for generic
support such as BeanAccess.createProperty(String, Class)
according types have to be
registered via an implementation of this interface.PropertyFactoryManager
Modifier and Type | Method and Description |
---|---|
P |
create(String name,
GenericType<? extends V> valueType,
Bean bean,
AbstractValidator<? super V> validator)
Creates a new instance of the property.
|
Class<P> |
getImplementationClass() |
Class<? extends ReadableProperty<V>> |
getReadableInterface() |
Class<? extends V> |
getValueClass() |
Class<? extends WritableProperty<V>> |
getWritableInterface() |
Class<? extends V> getValueClass()
Class
of the property value
. May be null
for
GenericProperty
.Class<? extends ReadableProperty<V>> getReadableInterface()
Class
reflecting the ReadableProperty
interface.Class<? extends WritableProperty<V>> getWritableInterface()
Class
reflecting the WritableProperty
interface.Class<P> getImplementationClass()
Class
reflecting the WritableProperty
implementation.P create(String name, GenericType<? extends V> valueType, Bean bean, AbstractValidator<? super V> validator)
name
- the property name
.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.bean
- the property bean
.validator
- the validator
used for validation
.
May be null
.Copyright © 2001–2016 mmm-Team. All rights reserved.