java.lang.Object
org.microbean.loader.spi.AbstractProvider
org.microbean.loader.spi.AbstractTreeBasedProvider<TreeNode>
org.microbean.loader.jackson.JacksonProvider
- All Implemented Interfaces:
Provider
- Direct Known Subclasses:
InputStreamJacksonProvider
A partial
AbstractTreeBasedProvider implementation backed
by Jackson.- Author:
- Laird Nelson
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreates a newJacksonProvider.protectedJacksonProvider(Type lowerBound) Creates a newJacksonProvider. -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanfinal TreeNodefinal TreeNodefinal booleanfinal booleanfinal booleanprotected abstract ObjectCodecobjectCodec(Loader<?> requestor, Path<? extends Type> absolutePath) Returns anObjectCodecsuitable for the combination of the suppliedLoaderandPath, ornullif there is no suchObjectCodec.protected TreeNodequalifiers(TreeNode node) protected BiFunction<? super TreeNode,? super Type, ?> final intMethods inherited from class org.microbean.loader.spi.AbstractTreeBasedProvider
container, find, path, path, qualifiers, rootNodeMethods inherited from class org.microbean.loader.spi.AbstractProvider
get, lowerBound
-
Constructor Details
-
JacksonProvider
protected JacksonProvider()Creates a newJacksonProvider.- See Also:
-
JacksonProvider
Creates a newJacksonProvider.- Parameters:
lowerBound- the lower type bound of thisJacksonProviderimplementation; may benull
-
-
Method Details
-
size
- Specified by:
sizein classAbstractTreeBasedProvider<TreeNode>
-
names
- Specified by:
namesin classAbstractTreeBasedProvider<TreeNode>
-
get
- Specified by:
getin classAbstractTreeBasedProvider<TreeNode>
-
get
- Specified by:
getin classAbstractTreeBasedProvider<TreeNode>
-
absent
- Specified by:
absentin classAbstractTreeBasedProvider<TreeNode>
-
nil
- Specified by:
nilin classAbstractTreeBasedProvider<TreeNode>
-
map
- Specified by:
mapin classAbstractTreeBasedProvider<TreeNode>
-
list
- Specified by:
listin classAbstractTreeBasedProvider<TreeNode>
-
qualifiers
- Specified by:
qualifiersin classAbstractTreeBasedProvider<TreeNode>
-
objectCodec
Returns anObjectCodecsuitable for the combination of the suppliedLoaderandPath, ornullif there is no suchObjectCodec.This method is called by the
AbstractProvider.get(Loader, Path)method in the normal course of events.- Parameters:
requestor- theLoaderseeking aValue; must not benullabsolutePath- an absolutePathfor which the suppliedLoaderis seeking a value; must not benull- Returns:
- an
ObjectCodecsuitable for the combination of the suppliedLoaderandPath, ornull - Idempotency:
- Implementations of this method must be idempotent, but not necessarily deterministic.
- Nullability:
- Implementations of this method may return
null. - Thread Safety:
- Implementations of this method must be safe for concurrent use by multiple threads.
-
reader
protected BiFunction<? super TreeNode,? super Type, reader?> (Loader<?> requestor, Path<? extends Type> absolutePath) - Specified by:
readerin classAbstractTreeBasedProvider<TreeNode>
-