public class ReflectivePropertyProvider extends Object implements PropertyProvider
private fields (including final) and corresponding setters and/or getters.
Delegates the scanning to ReflectTools.extractFieldsWithMethods(Class, boolean).
Superclasses are by default included, unless DoNotScanSuperclasses is used on the type.
All fields are included in the results, except fields annotated with Ignore.
The declared field types are used, unless UseActualType is used, in which case the actual type of the field's value is used.
The results are cached, except when a type has UseActualType annotation on any of its fields.| Constructor and Description |
|---|
ReflectivePropertyProvider() |
| Modifier and Type | Method and Description |
|---|---|
void |
addMetadataProvider(MetadataProvider... providers)
Adds given
MetadataProviders. |
<T> List<Property<T,?>> |
getObjectPropertyDefinitions(Class<T> type,
T instance)
Builds a list of property definitions for a given object.
|
boolean |
isUsingFakeGettersWhenNotPresent()
Checks whether a fake getter (i.e.
|
boolean |
isUsingFakeSettersWhenNotPresent()
Checks whether a fake setter (i.e.
|
void |
setUsingFakeGettersWhenNotPresent(boolean usingFakeGettersWhenNotPresent)
Allows using a fake getter when there is no getter for a given property.
|
void |
setUsingFakeSettersWhenNotPresent(boolean usingFakeSettersWhenNotPresent)
Allows using a fake setter when there is no setter for a given property.
|
ReflectivePropertyProvider |
withMetadataProvider(MetadataProvider... providers)
Chains
addMetadataProvider(MetadataProvider...) and returns itself. |
ReflectivePropertyProvider |
withUsingFakeGettersWhenNotPresent(boolean setting)
Chains
setUsingFakeGettersWhenNotPresent(boolean) and returns itself. |
ReflectivePropertyProvider |
withUsingFakeSettersWhenNotPresent(boolean setting)
Chains
setUsingFakeGettersWhenNotPresent(boolean) and returns itself. |
public <T> List<Property<T,?>> getObjectPropertyDefinitions(Class<T> type, T instance)
PropertyProvidergetObjectPropertyDefinitions in interface PropertyProviderT - Generic type to enforce both type and instance are compatible.type - Type of the object.instance - An instance of the object. Can be null.null list of Propertys that can be empty.public final void addMetadataProvider(MetadataProvider... providers)
MetadataProviders. They will be called in order of adding.providers - An array of MetadataProviders to add.public final ReflectivePropertyProvider withMetadataProvider(MetadataProvider... providers)
addMetadataProvider(MetadataProvider...) and returns itself.providers - An array of MetadataProviders to add.addMetadataProvider(MetadataProvider...)public boolean isUsingFakeSettersWhenNotPresent()
true, a fake setter is used instead of a null value (default).public void setUsingFakeSettersWhenNotPresent(boolean usingFakeSettersWhenNotPresent)
usingFakeSettersWhenNotPresent - When true and a setter for a property is missing, a fake one will be used instead of null.public final ReflectivePropertyProvider withUsingFakeSettersWhenNotPresent(boolean setting)
setUsingFakeGettersWhenNotPresent(boolean) and returns itself.setting - Whether to fake setters.setUsingFakeSettersWhenNotPresent(boolean)public boolean isUsingFakeGettersWhenNotPresent()
null) is returned when there is no getter for a property.true, a fake getter is used instead of a null value (default).public void setUsingFakeGettersWhenNotPresent(boolean usingFakeGettersWhenNotPresent)
usingFakeGettersWhenNotPresent - When true and a getter for a property is missing, a fake one will be used instead of null.public final ReflectivePropertyProvider withUsingFakeGettersWhenNotPresent(boolean setting)
setUsingFakeGettersWhenNotPresent(boolean) and returns itself.setting - When true and a getter for a property is missing, a fake one will be used instead of null.setUsingFakeGettersWhenNotPresent(boolean)Copyright © 2023 Miki. All rights reserved.