Package io.quarkus.arc
Interface InjectableInstance<T>
-
- Type Parameters:
T-
- All Superinterfaces:
jakarta.enterprise.inject.Instance<T>,Iterable<T>,jakarta.inject.Provider<T>
- All Known Implementing Classes:
InstanceImpl
public interface InjectableInstance<T> extends jakarta.enterprise.inject.Instance<T>Enhanced version ofInstance.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jakarta.enterprise.inject.Instance
jakarta.enterprise.inject.Instance.Handle<T extends Object>
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description voidclearCache()Removes the cached result of theProvider.get()operation.InstanceHandle<T>getHandle()Iterable<InstanceHandle<T>>handles()Iterator<T>iterator()This method attempts to resolve ambiguities.default TorElse(T other)If there is exactly one bean that matches the required type and qualifiers, returns the instance, otherwise returnsother.default TorNull()If there is exactly one bean that matches the required type and qualifiers, returns the instance, otherwise returnsnull.<U extends T>
InjectableInstance<U>select(jakarta.enterprise.util.TypeLiteral<U> subtype, Annotation... qualifiers)InjectableInstance<T>select(Annotation... qualifiers)<U extends T>
InjectableInstance<U>select(Class<U> subtype, Annotation... qualifiers)-
Methods inherited from interface jakarta.enterprise.inject.Instance
destroy, handlesStream, isAmbiguous, isResolvable, isUnsatisfied, stream
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Method Detail
-
getHandle
InstanceHandle<T> getHandle()
- Specified by:
getHandlein interfacejakarta.enterprise.inject.Instance<T>
-
handles
Iterable<InstanceHandle<T>> handles()
- Specified by:
handlesin interfacejakarta.enterprise.inject.Instance<T>
-
select
InjectableInstance<T> select(Annotation... qualifiers)
- Specified by:
selectin interfacejakarta.enterprise.inject.Instance<T>
-
select
<U extends T> InjectableInstance<U> select(Class<U> subtype, Annotation... qualifiers)
- Specified by:
selectin interfacejakarta.enterprise.inject.Instance<T>
-
select
<U extends T> InjectableInstance<U> select(jakarta.enterprise.util.TypeLiteral<U> subtype, Annotation... qualifiers)
- Specified by:
selectin interfacejakarta.enterprise.inject.Instance<T>
-
clearCache
void clearCache()
Removes the cached result of theProvider.get()operation. If the cached result was a contextual reference of aDependentbean, destroy the reference as well.- See Also:
WithCaching
-
iterator
Iterator<T> iterator()
This method attempts to resolve ambiguities.In general, if multiple beans are eligible then the container eliminates all beans that are:
- not alternatives, except for producer methods and fields of beans that are alternatives,
- default beans.
- Specified by:
iteratorin interfaceIterable<T>- Returns:
- an iterator over the contextual references of the disambiguated beans
- See Also:
DefaultBean
-
orElse
default T orElse(T other)
If there is exactly one bean that matches the required type and qualifiers, returns the instance, otherwise returnsother.- Parameters:
other-- Returns:
- the bean instance or the other value
-
orNull
default T orNull()
If there is exactly one bean that matches the required type and qualifiers, returns the instance, otherwise returnsnull.- Parameters:
other-- Returns:
- the bean instance or
null
-
-