Package io.micronaut.context
Interface BeanLocator
-
- All Known Subinterfaces:
ApplicationContext,BeanContext,ConditionContext<T>,InitializableBeanContext
- All Known Implementing Classes:
DefaultApplicationContext,DefaultBeanContext
public interface BeanLocatorCore interface for locating and discovering
Beaninstances.- Since:
- 1.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default <T> java.util.Optional<T>findBean(io.micronaut.core.type.Argument<T> beanType)Finds a Bean for the given type and qualifier.<T> java.util.Optional<T>findBean(io.micronaut.core.type.Argument<T> beanType, Qualifier<T> qualifier)Finds a Bean for the given type and qualifier.default <T> java.util.Optional<T>findBean(java.lang.Class<T> beanType)Finds a Bean for the given type.<T> java.util.Optional<T>findBean(java.lang.Class<T> beanType, Qualifier<T> qualifier)Finds a Bean for the given type and qualifier.default <T> java.util.Optional<T>findOrInstantiateBean(java.lang.Class<T> beanType)Finds a Bean for the given type or attempts to instantiate the given instance.default <T> TgetBean(io.micronaut.core.type.Argument<T> beanType)Obtains a Bean for the given type and qualifier.default <T> TgetBean(io.micronaut.core.type.Argument<T> beanType, Qualifier<T> qualifier)Obtains a Bean for the given type and qualifier.<T> TgetBean(BeanDefinition<T> definition)Obtains a Bean for the given bean definition.default <T> TgetBean(java.lang.Class<T> beanType)Obtains a Bean for the given type.<T> TgetBean(java.lang.Class<T> beanType, Qualifier<T> qualifier)Obtains a Bean for the given type and qualifier.default <T> java.util.Collection<T>getBeansOfType(io.micronaut.core.type.Argument<T> beanType)Get all beans of the given type.default <T> java.util.Collection<T>getBeansOfType(io.micronaut.core.type.Argument<T> beanType, Qualifier<T> qualifier)Get all beans of the given type.<T> java.util.Collection<T>getBeansOfType(java.lang.Class<T> beanType)Get all beans of the given type.<T> java.util.Collection<T>getBeansOfType(java.lang.Class<T> beanType, Qualifier<T> qualifier)Get all beans of the given type.default <T> TgetProxyTargetBean(io.micronaut.core.type.Argument<T> beanType, Qualifier<T> qualifier)Resolves the proxy target for a given bean type.<T> TgetProxyTargetBean(java.lang.Class<T> beanType, Qualifier<T> qualifier)Resolves the proxy target for a given bean type.default <T> java.util.stream.Stream<T>streamOfType(io.micronaut.core.type.Argument<T> beanType)Obtain a stream of beans of the given type.default <T> java.util.stream.Stream<T>streamOfType(io.micronaut.core.type.Argument<T> beanType, Qualifier<T> qualifier)Obtain a stream of beans of the given type.default <T> java.util.stream.Stream<T>streamOfType(java.lang.Class<T> beanType)Obtain a stream of beans of the given type.<T> java.util.stream.Stream<T>streamOfType(java.lang.Class<T> beanType, Qualifier<T> qualifier)Obtain a stream of beans of the given type.
-
-
-
Method Detail
-
getBean
@NonNull <T> T getBean(@NonNull BeanDefinition<T> definition)Obtains a Bean for the given bean definition.- Type Parameters:
T- The bean type parameter- Parameters:
definition- The bean type- Returns:
- An instanceof said bean
- Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type- See Also:
Qualifiers
-
getBean
@NonNull <T> T getBean(@NonNull java.lang.Class<T> beanType, @Nullable Qualifier<T> qualifier)Obtains a Bean for the given type and qualifier.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean typequalifier- The qualifier- Returns:
- An instanceof said bean
- Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type- See Also:
Qualifiers
-
getBean
@NonNull default <T> T getBean(@NonNull io.micronaut.core.type.Argument<T> beanType, @Nullable Qualifier<T> qualifier)Obtains a Bean for the given type and qualifier.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The potentially parameterized bean typequalifier- The qualifier- Returns:
- An instanceof said bean
- Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type- Since:
- 3.0.0
- See Also:
Qualifiers
-
getBean
@NonNull default <T> T getBean(@NonNull io.micronaut.core.type.Argument<T> beanType)Obtains a Bean for the given type and qualifier.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The potentially parameterized bean type- Returns:
- An instanceof said bean
- Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type- Since:
- 3.0.0
- See Also:
Qualifiers
-
findBean
@NonNull <T> java.util.Optional<T> findBean(@NonNull io.micronaut.core.type.Argument<T> beanType, @Nullable Qualifier<T> qualifier)Finds a Bean for the given type and qualifier.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean typequalifier- The qualifier- Returns:
- An instance of
Optionalthat is either empty or containing the specified bean - Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type- Since:
- 3.0.0
- See Also:
Qualifiers
-
findBean
@NonNull default <T> java.util.Optional<T> findBean(@NonNull io.micronaut.core.type.Argument<T> beanType)Finds a Bean for the given type and qualifier.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean type- Returns:
- An instance of
Optionalthat is either empty or containing the specified bean - Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type- Since:
- 3.0.0
- See Also:
Qualifiers
-
findBean
@NonNull <T> java.util.Optional<T> findBean(@NonNull java.lang.Class<T> beanType, @Nullable Qualifier<T> qualifier)Finds a Bean for the given type and qualifier.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean typequalifier- The qualifier- Returns:
- An instance of
Optionalthat is either empty or containing the specified bean - Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type- See Also:
Qualifiers
-
getBeansOfType
@NonNull <T> java.util.Collection<T> getBeansOfType(@NonNull java.lang.Class<T> beanType)Get all beans of the given type.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean type- Returns:
- The found beans
-
getBeansOfType
@NonNull <T> java.util.Collection<T> getBeansOfType(@NonNull java.lang.Class<T> beanType, @Nullable Qualifier<T> qualifier)Get all beans of the given type.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean typequalifier- The qualifier- Returns:
- The found beans
-
getBeansOfType
@NonNull default <T> java.util.Collection<T> getBeansOfType(@NonNull io.micronaut.core.type.Argument<T> beanType)Get all beans of the given type.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The potenitally parameterized bean type- Returns:
- The found beans
- Since:
- 3.0.0
-
getBeansOfType
@NonNull default <T> java.util.Collection<T> getBeansOfType(@NonNull io.micronaut.core.type.Argument<T> beanType, @Nullable Qualifier<T> qualifier)Get all beans of the given type.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The potenitally parameterized bean typequalifier- The qualifier- Returns:
- The found beans
- Since:
- 3.0.0
-
streamOfType
@NonNull <T> java.util.stream.Stream<T> streamOfType(@NonNull java.lang.Class<T> beanType, @Nullable Qualifier<T> qualifier)Obtain a stream of beans of the given type.- Type Parameters:
T- The bean concrete type- Parameters:
beanType- The bean typequalifier- The qualifier- Returns:
- A stream of instances
- See Also:
Qualifiers
-
streamOfType
@NonNull default <T> java.util.stream.Stream<T> streamOfType(@NonNull io.micronaut.core.type.Argument<T> beanType, @Nullable Qualifier<T> qualifier)Obtain a stream of beans of the given type.- Type Parameters:
T- The bean concrete type- Parameters:
beanType- The potentially parameterized bean typequalifier- The qualifier- Returns:
- A stream of instances
- Since:
- 3.0.0
- See Also:
Qualifiers
-
streamOfType
@NonNull default <T> java.util.stream.Stream<T> streamOfType(@NonNull io.micronaut.core.type.Argument<T> beanType)Obtain a stream of beans of the given type.- Type Parameters:
T- The bean concrete type- Parameters:
beanType- The potentially parameterized bean type- Returns:
- A stream of instances
- Since:
- 3.0.0
- See Also:
Qualifiers
-
getProxyTargetBean
@NonNull <T> T getProxyTargetBean(@NonNull java.lang.Class<T> beanType, @Nullable Qualifier<T> qualifier)Resolves the proxy target for a given bean type. If the bean has no proxy then the original bean is returned.- Type Parameters:
T- The generic type- Parameters:
beanType- The bean typequalifier- The bean qualifier- Returns:
- The proxied instance
-
getProxyTargetBean
@NonNull default <T> T getProxyTargetBean(@NonNull io.micronaut.core.type.Argument<T> beanType, @Nullable Qualifier<T> qualifier)Resolves the proxy target for a given bean type. If the bean has no proxy then the original bean is returned.- Type Parameters:
T- The generic type- Parameters:
beanType- The bean typequalifier- The bean qualifier- Returns:
- The proxied instance
- Since:
- 3.0.0
-
streamOfType
@NonNull default <T> java.util.stream.Stream<T> streamOfType(@NonNull java.lang.Class<T> beanType)Obtain a stream of beans of the given type.- Type Parameters:
T- The bean concrete type- Parameters:
beanType- The bean type- Returns:
- A stream
-
getBean
@NonNull default <T> T getBean(@NonNull java.lang.Class<T> beanType)Obtains a Bean for the given type.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean type- Returns:
- An instanceof said bean
- Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given typeNoSuchBeanException- If the bean doesn't exist
-
findBean
@NonNull default <T> java.util.Optional<T> findBean(@NonNull java.lang.Class<T> beanType)Finds a Bean for the given type.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean type- Returns:
- An instance of
Optionalthat is either empty or containing the specified bean - Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type
-
findOrInstantiateBean
@NonNull default <T> java.util.Optional<T> findOrInstantiateBean(@NonNull java.lang.Class<T> beanType)Finds a Bean for the given type or attempts to instantiate the given instance.- Type Parameters:
T- The bean type parameter- Parameters:
beanType- The bean type- Returns:
- An instance of
Optionalthat is either empty or containing the specified bean if it could not be found or instantiated - Throws:
NonUniqueBeanException- When multiple possible bean definitions exist for the given type
-
-