public class FieldBasedObjectInterpolator extends Object implements ObjectInterpolator
Interpolator
instance to resolve any String fields in the
graph.
Modifier and Type | Field and Description |
---|---|
static Set<String> |
DEFAULT_BLACKLISTED_FIELD_NAMES |
static Set<String> |
DEFAULT_BLACKLISTED_PACKAGE_PREFIXES |
Constructor and Description |
---|
FieldBasedObjectInterpolator()
Use the default settings for blacklisted fields and packages, where fields named 'parent' and classes in packages
starting with 'java' will not be interpolated.
|
FieldBasedObjectInterpolator(Set<String> blacklistedFieldNames,
Set<String> blacklistedPackagePrefixes)
Use the given black-lists to limit the interpolation of fields and classes (by package).
|
Modifier and Type | Method and Description |
---|---|
static void |
clearCaches()
Clear out the Reflection caches kept for the most expensive operations encountered: field lookup and primitive
queries for fields.
|
List<ObjectInterpolationWarning> |
getWarnings()
Retrieve the
List of warnings (ObjectInterpolationWarning
instances) generated during the last interpolation execution. |
boolean |
hasWarnings()
Returns true if the last interpolation execution generated warnings.
|
void |
interpolate(Object target,
Interpolator interpolator)
Using reflective field access and mutation, traverse the object graph from the given starting point and
interpolate any Strings found in that graph using the given
Interpolator . |
void |
interpolate(Object target,
Interpolator interpolator,
RecursionInterceptor recursionInterceptor)
Using reflective field access and mutation, traverse the object graph from the given starting point and
interpolate any Strings found in that graph using the given
Interpolator . |
public FieldBasedObjectInterpolator()
public FieldBasedObjectInterpolator(Set<String> blacklistedFieldNames, Set<String> blacklistedPackagePrefixes)
blacklistedFieldNames
- The list of field names to ignoreblacklistedPackagePrefixes
- The list of package prefixes whose classes should be ignoredpublic static void clearCaches()
public boolean hasWarnings()
hasWarnings
in interface ObjectInterpolator
public List<ObjectInterpolationWarning> getWarnings()
List
of warnings (ObjectInterpolationWarning
instances) generated during the last interpolation execution.getWarnings
in interface ObjectInterpolator
public void interpolate(Object target, Interpolator interpolator) throws InterpolationException
Interpolator
. Limits to this process can be
managed using the black lists configured in the constructor.interpolate
in interface ObjectInterpolator
target
- The starting point of the object graph to traverseinterpolator
- The Interpolator
used to resolve any Strings encountered during traversal.
NOTE: Uses SimpleRecursionInterceptor
.InterpolationException
public void interpolate(Object target, Interpolator interpolator, RecursionInterceptor recursionInterceptor) throws InterpolationException
Interpolator
. Limits to this process can be
managed using the black lists configured in the constructor.interpolate
in interface ObjectInterpolator
target
- The starting point of the object graph to traverseinterpolator
- The Interpolator
used to resolve any Strings encountered during traversal.recursionInterceptor
- The RecursionInterceptor
used to detect cyclical expressions in the graphInterpolationException
Copyright © 2019. All rights reserved.