Interface InstanceSupplier<T>
- Type Parameters:
T
- the type of instance supplied by this supplier
- All Superinterfaces:
Supplier<T>
,ThrowingSupplier<T>
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
Specialized
Supplier
that can be set on a
BeanDefinition
when details about the registered bean
are needed to
supply the instance.- Since:
- 6.0
- Author:
- Phillip Webb
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault <V> InstanceSupplier<V>
andThen
(ThrowingBiFunction<RegisteredBean, ? super T, ? extends V> after) Return a composed instance supplier that first obtains the instance from this supplier, and then applied theafter
function to obtain the result.get
(RegisteredBean registeredBean) Gets the supplied instance.default T
Gets a result, possibly throwing a checked exception.static <T> InstanceSupplier<T>
of
(InstanceSupplier<T> instanceSupplier) Lambda friendly method that can be used to create aInstanceSupplier
and add post processors in a single call.static <T> InstanceSupplier<T>
using
(ThrowingSupplier<T> supplier) Factory method to create anInstanceSupplier
from aThrowingSupplier
.Methods inherited from interface org.springframework.util.function.ThrowingSupplier
get, get, throwing
-
Method Details
-
getWithException
Description copied from interface:ThrowingSupplier
Gets a result, possibly throwing a checked exception.- Specified by:
getWithException
in interfaceThrowingSupplier<T>
- Returns:
- a result
-
get
Gets the supplied instance.- Parameters:
registeredBean
- the registered bean requesting the instance- Returns:
- the supplied instance
- Throws:
Exception
- on error
-
andThen
default <V> InstanceSupplier<V> andThen(ThrowingBiFunction<RegisteredBean, ? super T, ? extends V> after) Return a composed instance supplier that first obtains the instance from this supplier, and then applied theafter
function to obtain the result.- Type Parameters:
V
- the type of output of theafter
function, and of the composed function- Parameters:
after
- the function to apply after the instance is obtained- Returns:
- a composed instance supplier
-
using
Factory method to create anInstanceSupplier
from aThrowingSupplier
.- Type Parameters:
T
- the type of instance supplied by this supplier- Parameters:
supplier
- the source supplier- Returns:
- a new
InstanceSupplier
-
of
Lambda friendly method that can be used to create aInstanceSupplier
and add post processors in a single call. For example:InstanceSupplier.of(registeredBean -> ...).withPostProcessor(...)
.- Type Parameters:
T
- the type of instance supplied by this supplier- Parameters:
instanceSupplier
- the source instance supplier- Returns:
- a new
InstanceSupplier
-